How to create PDF reports using PL/SQL - oracle

Is there PL/SQL package or engine available which would enable the creation of PDF reports from stored procedures?

If your looking for a freeware or open source package, their is this. I've not used it, but it has good reviews. lPL_FPDF If you have a budget, then this, which enterprise class product, meaning excellent documentation, is available. plpdf.
The commercial package is written in native Pl/SQL so will be very easy to use. The open source package I don't know.
If your running in an Oracle environment, with any of the reports servers, then all of then support PDF being emitted both to the printer and stored in the db as blobs.
Its a fairly tedious task to configure it, from what I remember.
Hope that gets you started.
B

PL_FPDF has many problems, such as 32k page limitations and many bugs. I've modified the code and renamed it to wpdf. You can get wpdf here: http://databaseknowledge.com/services.htm

You may want to look into Oracle Application Express to create PDF reports, but depending on how the output is coming out from your stored procedure, it may not be an easy tool to use.
You can find directions here:
http://www.oracle.com/technology/obe/apex/apex31nf/apex31rpt.htm#t1

Oracle Application Express - printing features not to be forgotten. You can use interactive reporting from browser and decide what you need to print. You can apply XSLT also and decide the printing format.

Related

Portable Frontend Data input interface for SQL Server Database

I have a SQL Server Database, I want a front-end graphical user interface for data input, which can be either web or desktop. But it has to be portable I mean it should be used without additional installation of any program. That front-end interface will be used by many users for input data into Database. Can you please help and suggest me?
Please see the link to the similar question. I find it quite helpful.
Which tool to build a simple web front-end to my database
and this
http://community.spiceworks.com/topic/195850-does-anyone-have-a-quick-and-dirty-way-to-access-ms-sql-data-from-a-web-app
and if you have some free time also this
http://www.academia.edu/4948292/Design_and_Implementation_of_Graphical_User_Interface_for_Relational_Database_Management_System
and potentially this
https://ask.sqlservercentral.com/questions/89751/is-there-a-front-end-application-development-tool.html
I hope it helps (at least a bit!)
Not sure if anyone is still looking for this, but https://beekeeperstudio.io is an open source database gui with a portable build.
Windows has a portable exe
Linux has appimage

T-SQL: is there a way to force conformance to ANSI SQL?

We are planning on writing a load process that uses SSIS and loads a SQL 2008 database. Transformations may be done in the packages or in stored procedures that are called from a package or directly from our job scheduler.
What can we do now while in planning stage to minimize the impact should we have to migrate the app to Oracle in teh future?
I picture the SSIS packages could be changed to use a different provider.
What about the SQL that we use?
Q: Is there a way to put, for example, a stored procedure in "ANSI mode" for lack of a better term to ensure that only standard SQL is used within to increase our chances that the SQL will migrate to Oracle?
One thing you can do is SET FIPSFLAGGER FULL etc. More info here: http://msdn.microsoft.com/en-us/library/ms189781.aspx
I am not aware of any ANSI Standard for RDBMS programming languages. And the constructs between TSQL and PL/SQL are quite different.
But can you use the Common Runtime Environment (I think that's what its called) in SQL Server to run JAVA? If you can, and given that Oracle can run JA VA this might offer a pathway to what you want to acheive.

What is the perfect toolbox for PL/SQL development?

I work on two projects with a lot of PL/SQL code since few months.
However, I didn't find any really interesting tools to develop on this langage.
For the moment, my configuration includes the following tools:
Eclipse (the rest of the application is developed in Java), with PL/SQL Editor plugin
As I really don't like and trust the PL/SQL Editor plugin for Eclipse, I use mainly PsPad for editing my PL/SQL files.
SQL Developer (I have also TOAD, but I don't really know/like this tool).
So what is your "perfect" toolbox for developing PL/SQL applications?
I've also read that SQL Developer 2.1 introduces a PL/SQL unit testing feature. Does anybody has a feedback about this feature and this version of SQL Developer (I still use 1.5) ?
Being an old-fashioned sort of chap I still mainly get along with SQL*Plus and the TextPad IDE. TextPad is nagware, but the licence is cheap and the tool has some fantastic features. Also people have written PLSQL syntax libraries for it, which give you keyword highlighting. It is also possible to hook TextPad into other desktop tools such as Subversion.
SQL^Developer is written in java, which means it is a voracious consumer of memory. Still there is undoubted merit in having a data browser. Also the upcoming version 2.1 features built-in unit test, which could be very tasty.
Useful utilities:
pldoc :: generate Javadoc-style
documentation from the comments in
your package spec
utplplsql :: unit test harness;
old but it still works
QUTO :: another, more
sophisticated unit test harness
(which I don't use for the same
reason I'm still hacking with
SQL*Plus and TextPad)
QGCU :: PL/SQL code generator
(previously QNXO)
In defence of Luddism
The danger with tools like TOAD and SQL*Developer is that they allow us to execute DML and DDL directly against the database, including editing PL/SQL source. This is fine and dandy and awfully in the spirit of Getting Things Done. Until we need to revert our changes. Or the production DBA demands a script....
Of course it is possible to use TOAD or SQL Developer in a safe fashion - I know SQL Developer can hook into source control as well - if just requires more self-discipline.
I always liked the PL/SQL Developer by Allround Automations - an excellent, quick and easy to use, and totally affordable tool!
For an interactive query shell - much better than SQL*Plus - I used to use "Golden" - a nice and powerful shareware tool, highly recommended.
Much better than anything else I ever tried with Oracle.
Marc
Might be a slightly different answer than you were expecting but I feel the Oracle documentation and in particular this book should be essential for any PL/SQL toolbox.
My primary editor for PL/SQL packages is SlickEdit.
SlickEdit offers good support for PL/SQL development, though you might miss the direct connection to the database that tools like TOAD or SQLDeveloper offer.
On the other hand, working on PL/SQL files (instead of directly working on database objects, like many TOAD users do) is IMO a good practice for any non-trivial project.
In addition to SlickEdit, I use a few self-made helper programs, e.g. one that loads source code from the database and creates a source file, and another one that compiles the source and calculates the correct line numbers for errors in a file that contains multible objects, e.g. both package specification and body.
For direct database access, I prefer SQLDeveloper, mostly because it's free and works well on Linux.
I use:
Eclipse as the IDE
Toby's PLSQL Editor as the PLSQL Eclipse plugin
TOAD as the database tool
utplsql and OUnit as the unit test framework
Ant as the build tool
CVS as the source control tool
pldoc as the documentation tool
CruiseControl as the continuous integration tool
Toby's PLSQL Editor can do:
Syntax highlighting
Code completion
Load to database
Header generation
F3 jump to code

How do I provide a runtime form designer for my end user?

I would like to create a report designer that has the same functionality and ease of use as the Visual Studio IDE. The ability to drag controls onto a form, select various subsets of those controls, align left, evenly space, etc.
The only tools I have ever encountered are really bad. Crystal Reports, the MS Access report crapola, ComponentOne, etc. Is there a third party tool that does this right, or do I have to roll my own?
Um, sounds like you want to do ad-hoc reporting. I have never seen one of these done well outside of a COTS product like BusinessObjects Web Intelligence, which I am using right now on one of my projects.
http://www.businessobjects.com/product/catalog/web_intelligence/
I think you'll have to roll your own here.
The problem here is one of balance. Third party reporting tools have to be flexible, open and highly customizable to the whims of every potential user. As a result, these tools end being not usable to a lay person.
That said creating a visual report designer is not a trivial task. So my suggestion would be to distill the user's voice to find the minimal set of functionality (report elements, formatting, etc.) done first in a usable manner... may not be pretty the first time. And then iterate.
I'm working on a similar need and currently evaluating if MS Word with some custom add-ins would get the job done.
Some years ago I used Active Reports from a company called Data Dynamics. It was nice in that it allowed my users to create their own reports - and they loved not having to contact me to create some ad-hoc report. I am sure the product has evolved since 2001, might want to give it a look.
There is an SQL MS Reports Solution. It's called SSRS and you may have heard of it, but what you might not know it there is an OK end user targeted reporting tool. It works especially well if you are using datasets. The reports can be saved as files and run and/or built inside a VS project, within SQL SSRS, or using the free standing tool (i'd start here). They can also be run from a web control. They can export to excel and even PDF I think.
See SQL2008 Tool here - http://www.microsoft.com/downloads/details.aspx?FamilyID=9f783224-9871-4eea-b1d5-f3140a253db6&displaylang=en
More info here - http://en.wikipedia.org/wiki/SQL_Server_Reporting_Services
This is also available in SQL2005 also I believe.

Conversion tool for MS-Excel spreadsheets with macros and VB to Oracle?

Our users have created MS-Excel spreadsheets which over time have evolved into fairly complex applications. They run their part of the business with them. But, never having been exposed to software development discipline, these spreadsheets are brittle, single point of failure, solutions.
Our development group uses Oracle primarily with Java and some other technologies. Is there a tools for conversion from MS-Excel to Oracle? At least part way so we can get a head start and not just have to reverse engineer and rewrite?
There are tools that could convert the data, but trying to converting the formulas would cause the design to be inefficient at best and unusable at worst. The difference between spreadsheets and an Oracle database are similar to the differences between a home gardener and a farmer. Both are useful on their level and some of the same principles apply, but the techniques employed are entirely different.
I suggest you examine the spreadsheets until you understand the goals they are trying to meet and then architect a system in Oracle that meets those goals using the best techniques available in Oracle. The processing will end up being quite different, but the product will be significantly better for it.
You can suck a spreadsheet into MS Access, then push it directly into Oracle as a table (or append it to an existing table). I'm sure you could write an MS Access macro to do it.
It also appears to be possible using SQL Loader from Oracle, but I've never tried that myself.
No there aren't any tools that will covert the formulas or logic. You will have to do that the hard way. You can get the data into Oracle by exporting it as a CSV and using SQL Loader to import it into the database.
You can find tools to migrate the data, but other than that you wouldn't find a tool to automatically do this, you would have to do it all manually.
Even directly copying what was there would not make sense, you were using very limited tools (Excel), you would need to re-analyze the requirements, and possibly modify them before doing anything else.

Resources