Sql report generation

Hi all,
I am currently using Application Express 3.1.2.00.02 I have developed an online questionnaire with a multiselect list for one of the questions. The problem i am having is that i need each choice to be totaled up separately on the report generated. At the moment they are totaled but if the respondent has chosen 2 or more selections which are slightly different the report will generate a new row.
Do i have to use substring command if so how do i incorporate it to the code below.
Below is the sql code i am using currently.
select "QUESTION 9",
count(*) c
from "P1 DQUESTIONNAIRE"
group by "QUESTION 9"
Thanks for your help another Newbie

Not a very clear question. I assume you table of answers looks like this:
Question Answer
and for this question you could have one respondent who chose a couple of items, so their answer looks like this:
Question Answer
"Question 9" a
"Question 9" c
And as output you really want
Q9a Q9b Q9c
(count) (count) (count)
Is that right?
Jon

Similar Messages

  • Report generation fails with below error

    Hi Friends,
    This is an extarct from "ccat /var/opt/SUNWsymon/PRM/log/prm.log"
    Report generation fails for individual host but succeeds for all hosts.
    prmlog September 13, 2010 12:52:14 PM Thread-287: Begin loading files
    prmlog September 13, 2010 12:53:51 PM HandlerThread-0: Got trap: 2
    prmlog September 13, 2010 12:53:51 PM HandlerThread-2: Got trap: 2
    prmlog September 13, 2010 12:54:51 PM HandlerThread-1: Got trap: 2
    prmlog September 13, 2010 12:54:51 PM HandlerThread-2: Got trap: 2
    prmlog September 13, 2010 12:56:01 PM HandlerThread-0: Got trap: 2
    prmlog September 13, 2010 12:58:51 PM HandlerThread-0: Got trap: 2
    prmlog September 13, 2010 12:58:51 PM HandlerThread-2: Got trap: 2
    prmlog September 13, 2010 12:59:51 PM HandlerThread-1: Got trap: 2
    prmlog September 13, 2010 12:59:51 PM HandlerThread-2: Got trap: 2
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Call CrScheduledRequestBroker.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Call CrScheduledRequestBroker.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Call CrScheduledRequestBroker.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Call CrScheduledRequestBroker.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Call CrScheduledRequestBroker.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Database Error occurs!
    prmlog September 13, 2010 1:00:00 PM Parallel:0: ERROR: relation "detail_temp_host" does not exist
    prmlog September 13, 2010 1:00:00 PM Parallel:0: SchedOP: Exception: scp-2: Report request generation failed.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Call CrScheduledRequestBroker.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Database Error occurs!
    prmlog September 13, 2010 1:00:00 PM Parallel:0: ERROR: relation "detail_temp_host" does not exist
    prmlog September 13, 2010 1:00:00 PM Parallel:0: SchedOP: Exception: creature-t1000-08: Report request generation failed.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Database Error occurs!
    prmlog September 13, 2010 1:00:00 PM Parallel:0: ERROR: relation "detail_temp_host" does not exist
    prmlog September 13, 2010 1:00:00 PM Parallel:0: SchedOP: Exception: sdp-1-region2: Report request generation failed.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Database Error occurs!
    prmlog September 13, 2010 1:00:00 PM Parallel:0: ERROR: relation "detail_temp_host" does not exist
    prmlog September 13, 2010 1:00:00 PM Parallel:0: SchedOP: Exception: psp-1-region2: Report request generation failed.
    prmlog September 13, 2010 1:00:00 PM Parallel:0: Database Error occurs!
    prmlog September 13, 2010 1:00:00 PM Parallel:0: ERROR: relation "detail_temp_host" does not exist
    prmlog September 13, 2010 1:00:00 PM Parallel:0: SchedOP: Exception: shissun1: Report request generation failed.
    prmlog September 13, 2010 1:00:05 PM Thread-294: Report successfully posted to web server.
    prmlog September 13, 2010 1:01:01 PM HandlerThread-0: Got trap: 2
    prmlog September 13, 2010 1:03:54 PM HandlerThread-0: Got trap: 2
    In /tmp directory I could see database logs directory (/tmp/SunMCDBLogFiles)
    Below is an extarct from "db-start-sql.log"
    ERROR: table "summ_temp_events" does not exist
    LOG: autovacuum: processing database "postgres"
    LOG: autovacuum: processing database "sunmc"
    LOG: autovacuum: processing database "postgres"
    LOG: autovacuum: processing database "sunmc"
    LOG: autovacuum: processing database "postgres"
    LOG: autovacuum: processing database "sunmc"
    LOG: autovacuum: processing database "postgres"
    LOG: autovacuum: processing database "sunmc"
    LOG: autovacuum: processing database "postgres"
    LOG: autovacuum: processing database "sunmc"
    LOG: autovacuum: processing database "postgres"
    LOG: autovacuum: processing database "sunmc"
    LOG: autovacuum: processing database "postgres"
    LOG: autovacuum: processing database "sunmc"
    WARNING: there is already a transaction in progress
    ERROR: relation "detail_temp_host" does not exist
    CONTEXT: SQL statement "INSERT INTO detail_temp_host (host_id) VALUES (21)"
    PL/pgSQL function "get_alarm_data_ids" line 203 at execute statement
    PL/pgSQL function "sp_get_nonperf_summary_data" line 92 at assignment
    WARNING: there is already a transaction in progress
    WARNING: there is already a transaction in progress
    ERROR: table "summ_temp_events" does not exist
    ERROR: relation "detail_temp_host" does not exist
    CONTEXT: SQL statement "INSERT INTO detail_temp_host (host_id) VALUES (26)"
    PL/pgSQL function "get_alarm_data_ids" line 203 at execute statement
    PL/pgSQL function "sp_get_nonperf_summary_data" line 92 at assignment
    ERROR: relation "detail_temp_host" does not exist
    CONTEXT: SQL statement "INSERT INTO detail_temp_host (host_id) VALUES (25)"
    PL/pgSQL function "get_alarm_data_ids" line 203 at execute statement
    PL/pgSQL function "sp_get_nonperf_summary_data" line 92 at assignment
    WARNING: there is already a transaction in progress
    ERROR: table "summ_temp_events" does not exist
    WARNING: there is already a transaction in progress
    ERROR: table "summ_temp_events" does not exist
    ERROR: relation "detail_temp_host" does not exist
    CONTEXT: SQL statement "INSERT INTO detail_temp_host (host_id) VALUES (42)"
    PL/pgSQL function "get_alarm_data_ids" line 203 at execute statement
    PL/pgSQL function "sp_get_nonperf_summary_data" line 92 at assignment
    ERROR: relation "detail_temp_host" does not exist
    CONTEXT: SQL statement "INSERT INTO detail_temp_host (host_id) VALUES (1)"
    PL/pgSQL function "get_alarm_data_ids" line 203 at execute statement
    Kindly suggest me.. This SUNMC is doing more than killing.
    Thanks
    Srini

    I just received instructions from the TMG software company to uninstall and install the PDF driver they use. This fixed the problem. Apparently upgrading to v7.01 damages the driver but reinstalling it corrects the problem.
    Thanks for the advice.
    Mike

  • "no data found" run-time error masking SQL/report mismatch

    Hi all,
    At last, figured out a vexing problem and wondering if anyone else either:
    a) has also hit the problem, and hopefully
    b) has figured out a clever way around it.
    Namely, in our AppEx apps, we rely on SQL query generation from PL/SQL packaged functions. This "best practice" promotes reuse, automated testing, etc. Great idea - works great.
    However, we've repeatedly come across a situation where we go to run a page with a report on it only to get a "report error: ORA-01403: no data found" message where the report should be. Not much to go on. After trial and error, it turns out that simply going to the Region Definition page (where the PL/SQL function call is defined) and clicking the "Apply Changes" button cleared the problem up.
    Mystifying because the actual SQL query generated by the PL/SQL is valid (we've got a nightly testing job that pulls the PL/SQL function calls out of the AppEx metadata tables, executes them to get back the SQL and then validates the SQL).
    Turns out this problem looks to be a result of columns changing in the actual SQL itself, and hence not matching up to the Region Attributes (column names, one assumes) that AppEx knows about. Simply clicking Apply Changes causes AppEx to validate the returned query and then it adjusts the column attributes (one assumes) so that things match up.
    So - the $64,000 question(s):
    1) Are there any cool AppEx APIs to be able to try and detect this situation? Given an app of middling complexity (50-100 pages, each with various queries/reports), this is not an attractive issue to deal with manually.
    2) Any cool AppEx APIs to fix, or auto-sync these situations? (Essentially programmatically calling the "Apply Changes" button if you will).
    At a minimum, it would be great if AppEx could be updated to put out some kind of more informative error message when this occurs - maybe something along the lines of "Region Attributes Do Not Match Data Returned from Query", or something like that at least.
    Thanks for any input/ideas,
    Jim C.

    Thanks to all for your prompt responses.
    Vikas actually did me the favor of pretty much clarifying my info for me (tks Vikas). Yes, to all the above. It's PL/SQL code generating a SQL query, so 1 is (a); we want to use query-specific columns so it is (2a). And yes, the whole problem is that the something does change to cause the SELECT statement column list to change...nature of the beast, so "don't do that" doesn't really help here.
    Scott - sorry, should have been more explicit. Basically, we have a PL/SQL function behind a report that returns a SQL statement for the report. If that PL/SQL code changes to add a new column to the report (without going to the corresponding Report Attributes page and clicking the "Apply Changes" button to get AppEx to revalidate the query), then you wind up with this "no data found" error msg, which doesn't exactly point you to the root of the problem.
    It seems as though the "parse at compile-time" is really what's going on here. There must be some kind of "run-time" check going on as well, that is resulting in the "no data found" message. Seems as though it ought to be fairly straightforward to add some kind of check at run-time to handle that exception a little cleaner. Is there an official process to register a "Request for Process Enhancement" for AppEx to do this?
    In the meantime, thank you Vikas for the pointer to the APEX_APPLICATION_PAGE_RPT_COLS view - that looks like it will do the trick nicely. Given that, we can now add logic to our nightly "app tester" job that can compare what columns AppEx expects to find in a given report (for a given page) with the actual SQL (coming back from the PL/SQL function call) to essentially "validate" the AppEx meta data and at least let us know when these things get out of sync.
    BTW - if anyone would be interested in the actual contents of that "app tester" logic, I'd be happy to post it (someplace...here? Studio site?). It's basically just a PL/SQL block of code that currently runs in cron that just validates any SQL embedded in our app. (I suppose it is a little "hard-coded" since it does use our naming conventions for packages/functions to parse the PL/SQL calls from the Meta Data but it might still serve as a usefull starting point...) Since our AppEx app(s) sit on top of a database schema that is in fairly constant flux, we need the ability to know when somebody has changed something in the schema that needs to be accounted for in AppEx. The job primarily just parses the AppEx meta data to find PL/SQL function calls that return SQL, executes that PL/SQL to get the generated SQL, then just validates that SQL and reports back any invalid SQL calls. Perhaps we're in some unusual development environment (15-20 people working on a database schema with 700-800 tables/views) but it seems as though it would be fairly easy, for anybody using PL/SQL to generate SQL (which is a GREAT and powerful thing, by the way - thanks to whoever thought that up in AppEx land) to run into this issue.
    Jim C.

  • Report Generation Help

    First, thanks for reading this.
    Secondly, I need help in creating a PL/SQL report which will be the datasource for a Crystal Reports template. I need to create a login report based on 3 tables holding user data, (login_table, user_table, user_region_table). I have no problem creating the SQL to show the users by region logging into the system for any given month based on the 3 above tables.
    What I need help with is using "connect by" and "group by" to faciliate how the report is viewed.
    login_table holds user_id and date they logged into system
    user_table holds user_id and region_id data
    user_region_table holds region_name
    SELECT MonthYear, region_name, Visits
    FROM (
    SELECT
    TO_CHAR (TO_DATE (lg.login_time, 'dd-Mon-yy'), 'Month yyyy') AS MonthYear,
    r.region_name,
    r.region_id,
    r.parent_id,
    COUNT (*) Logins
    FROM logging lg
    INNER JOIN users u ON (u.user_id = ipl.user_id)
    INNER JOIN region r ON (r.region_id = u.region_id)
    WHERE lg.login_time BETWEEN TO_DATE ('10/01/2010 00:00:00', 'mm/dd/yyyy hh24:mi:ss')
    AND TO_DATE ('09/30/2011 23:59:59', 'mm/dd/yyyy hh24:mi:ss')
    AND r.region_id NOT IN (0, -1)
    GROUP BY r.region_name,
    r.region_id,
    r.parent_id,
    TO_CHAR (TO_DATE (lg.login_time, 'dd-Mon-yy'), 'Month yyyy')
    ORDER BY TO_DATE(MonthYear, 'Month yyyy') DESC, r.parent_id, r.region_name
    This correctly displays the data I need, but I need it shown like:
    Date Region_Name Logins
    Oct 2011 Master Region Name 1 #
    Sub Region Name #
    Sub Region Name #
    Master Region Name 2 #
    Sub Region Name #
    Sub Region Name #
    Sept 2011 Master Region Name 1 #
    Sub Region Name #
    Sub Region Name #
    Master Region Name 2 #
    Sub Region Name #
    Sub Region Name #
    Any help will be greatly appreciated.

    If you have the report generation kit installed
    then just search examples in labview help.
    Attached vi is from example ( NB all sub vi are in NI labview .llb)
    IF RGK is not installed then can't run, vi terminal will default to either Report or HTML  you will not have opportunity to
    select word or excel format.
    Chow
    xseadog
    Attachments:
    Sample Report (Word).vi ‏95 KB

  • Drill down Error in Report Generation

    Hi,
    I've a problem with a Report generation.
    The ERROR Message is the following one:
    Odbc driver returned an error (SQLExecDirectW).
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] Generic error. [nQSError: 27002] near <(>: syntax error [nQSError: 26012] . (HY000)
    SQL Issued: {call NQSGetQueryColumnInfo('SELECT "Pivot xTD"."ID Report", "Pivot xTD"."Ordine Raggruppamento 1", "Pivot xTD"."Ordine Raggruppamento 2", "Pivot xTD"."Raggruppamento 1", "Pivot xTD".Valore, "Territorio"."Coda", "Territorio"."UT", DBO.FN_GET_PIVOT_LABEL_BI("Pivot xTD"."Label",TIMESTAMP ''2011-03-28 00:00:00.000'',TIMESTAMP ''2011-03-28 00:00:00.000'',"Calendario"."Max Giorno Pivot (formato data)",''Giornaliero''), EVALUATE(''DBO.FNC_GET_DATE_LABEL_BI(%1,%2,%3,%4)'' AS CHAR(500), TIMESTAMP''2011-03-28 00:00:00'', TIMESTAMP''2011-03-28 00:00:00'', Calendario."Max Giorno Pivot (formato data)", ''Giornaliero''), EVALUATE(''DBO.FN_GET_PIVOT_LABEL_BI(%1,%2,%3,%4,%5)'' AS CHAR(500), "Pivot xTD".Label, TIMESTAMP''2011-03-28 00:00:00'', TIMESTAMP''2011-03-28 00:00:00'', Calendario."Max Giorno Pivot (formato data)", ''Giornaliero''), Territorio.Coda, case "Pivot xTD"."ID KPI" when ''LAVORATO_BO_TOTALE'' THEN ''Totale'' when ''LAVORATO_BO_RECLAMI'' THEN ''di cui Reclami'' when ''LAVORATO_BO_AC'' THEN ''Di cui AC'' when ''LAVORATO_BO_CARTACEO'' THEN ''di cui Cartaceo'' when ''LAVORATO_BO_TELEFONICO'' THEN ''di cui Telefonico'' end FROM "Reportistica Predefinita"')}
    SQL Issued: SELECT "Pivot xTD"."ID Report", "Pivot xTD"."Ordine Raggruppamento 1", "Pivot xTD"."Ordine Raggruppamento 2", "Pivot xTD"."Raggruppamento 1", "Pivot xTD".Valore, "Territorio"."Coda", "Territorio"."UT", DBO.FN_GET_PIVOT_LABEL_BI("Pivot xTD"."Label",TIMESTAMP '2011-03-28 00:00:00.000',TIMESTAMP '2011-03-28 00:00:00.000',"Calendario"."Max Giorno Pivot (formato data)",'Giornaliero'), EVALUATE('DBO.FNC_GET_DATE_LABEL_BI(%1,%2,%3,%4)' AS CHAR(500), TIMESTAMP'2011-03-28 00:00:00', TIMESTAMP'2011-03-28 00:00:00', Calendario."Max Giorno Pivot (formato data)", 'Giornaliero'), EVALUATE('DBO.FN_GET_PIVOT_LABEL_BI(%1,%2,%3,%4,%5)' AS CHAR(500), "Pivot xTD".Label, TIMESTAMP'2011-03-28 00:00:00', TIMESTAMP'2011-03-28 00:00:00', Calendario."Max Giorno Pivot (formato data)", 'Giornaliero'), Territorio.Coda, case "Pivot xTD"."ID KPI" when 'LAVORATO_BO_TOTALE' THEN 'Totale' when 'LAVORATO_BO_RECLAMI' THEN 'di cui Reclami' when 'LAVORATO_BO_AC' THEN 'Di cui AC' when 'LAVORATO_BO_CARTACEO' THEN 'di cui Cartaceo' when 'LAVORATO_BO_TELEFONICO' THEN 'di cui Telefonico' end FROM "Reportistica Predefinita"
    Can someone help me?
    Thanks a lot.
    Edited by: user13313458 on 20-mag-2011 2.58
    Edited by: user13313458 on 20-mag-2011 3.01
    Edited by: user13313458 on 20-mag-2011 3.02
    Edited by: user13313458 on 20-mag-2011 3.02
    Edited by: user13313458 on 20-mag-2011 3.03
    Edited by: user13313458 on 20-mag-2011 3.05

    Thanks a lot for your answer.
    I tried to run the query in a SQL editor, and i've noticed that there's a function that lost its own parameters:
    EVALUATE('DBO.FNC_GET_DATE_LABEL_BI(%1,%2,%3,%4)' AS CHAR(500),
         TIMESTAMP'',
         TIMESTAMP'',
         Calendario."Max Giorno Pivot (formato data)",
    So i've tried to rune the function in this way:
    EVALUATE('DBO.FNC_GET_DATE_LABEL_BI(%1,%2,%3,%4)' AS CHAR(500),
         TIMESTAMP '2011-01-01 00:00:00.000',
         TIMESTAMP '2011-01-01 00:00:00.000',
         TIMESTAMP '2011-01-01 00:00:00.000',
         'string')
    but the error is the same.
    What can i do?
    Edited by: user13313458 on 23-mag-2011 3.02

  • Difference between diadem and LabVIEW Report Generation Toolkit

    I want to expand LabVIEW's reporting capabilities.  Can someone tell me what the difference is between DIAdem and the LabVIEW Report Generation Toolkit for Microsoft Office.

    Hello Mr Bean,
    There are several major differences between the two solutions. I'll try and outline them as good as I can ...
    The biggest different is that LabVIEW and its toolkits are programming tools and DIAdem is a ready to run application.
    The LabVIEW Report Generation Toolkit basically provides an extensive library of VIs that allow you to connect LabVIEW to the MS Office library and create and edit reports in Word and Excel.
    DIAdem is a stand alone application that was designed to post-process data from various sources. The tools included in DIAdem are:
    1. NAVIGATOR: Allows you to import data from files (ASCII, binary, Excel, etc.) as well as DataBases (SQL/ODBC, Citadel, ASAM, etc.). The unique DataPlugin technology available within DIAdem allows you to import vitually and data file by creating a DataPlugin that describes the data format and gets linked to DIAdem. More information at: http://www.ni.com/diadem/dataplugins.htm
    2. VIEW: Graphical and Numerical data inspection tool. Use cursors to zoom and scroll through your data, edit your data graphically and numerically and compare different tests.
    3. ANALYSIS: DIAdem has a wide range of analysis functions, ranging from simple functions like integration and differentiation to FFTs, Order analysis and 3D data analysis.
    4. REPORT: The DIAdem REPORT tool allows you to create reusable report layouts that can contain multiple axis systems (2D, 3D and polar plots) as well as tables (2D and 3D) and variables. The REPORT tool generates templates that can be usedwith multiple data sets due to the inclusion of automatic (or manula if required) scaling as well as extensive use of variables for annotations. Finished reports can be exported to printers, graphics files, the Windows Clipboard, HTML pages and PDF files (PDF writing is build into DIAdem, no extra software required). Using Scripts, it is also possible to create Word, Excel or Powerpoint reports from DIAdem automatically.
    5. SCRIPT: The DIAdem scripting tools allows users to record macros or write scripts that automate complete sequences, for the import of data, via extensive analysis, to creating a publication ready report. Scripts can make reports "intelligent" by modifying the appearance of a report based on the data or calculation results that are going to be displayed in the report.
    I recommend you check out the following link for more information: http://www.ni.com/diadem/
    DIAdem is an extremly powerful tool for report generation. I am leaving to go on a business trip to Asia, but I would be more than happy to give you an Web presentation on DIAdem after I have returned. We could use your data and create a DIAdem report Script together online. My Email address is [email protected] and I will be back the week of Thanksgiving.
          Otmar
    Otmar D. Foehner
    Business Development Manager
    DIAdem and Test Data Management
    National Instruments
    Austin, TX - USA
    "For an optimist the glass is half full, for a pessimist it's half empty, and for an engineer is twice bigger than necessary."

  • Query preview works; report generation fails

    I have a report query pulling data from two tables that: works in MS SQL Management Studio with no errors, and when copied and pasted into the Query window in BIRT works with a resulting Preview window as expected. However, the moment I hit View (in HTML or PDF, my two preferred outputs), I get an error message stating that the Report viewer cannot convert:
    "Can not convert the value of None to Integer type."
    I am sure this refers to the following query code:
    ,CAST(CASE
    WHEN a.Access1 > 1 THEN u.o_name03
    WHEN a.Access1 = 0 THEN 'None' END as varchar(10)) as 'Event'
    Where I cast the value of field access1 (tinyint) to a varchar in a case statement. However, what I don't understand is that the preview runs and returns the expected text ('None') with no problems.
    Why does the report generation itself cause this error - and more importantly, how do I fix it?
    By the way, the above code worked, at one time, without the CAST statement (both in Preview and in the report) but I changed the data tables and re-bound the report fields (one-by-one - there are 20 of them.)
    Ideas? What am I missing?
    Thanks in advance.

    Here it is:
    Stack Trace:
    org.eclipse.birt.report.engine.api.EngineException: A BIRT exception occurred. See next exception for more information.
    Can not convert the value of None to Integer type.
    at org.eclipse.birt.report.engine.executor.ExecutionContext.addException(ExecutionContext.java:1245)
    at org.eclipse.birt.report.engine.executor.ExecutionContext.addException(ExecutionContext.java:1224)
    at org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:96)
    at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:62)
    at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:46)
    at org.eclipse.birt.report.engine.internal.executor.emitter.ReportItemEmitterExecutor.execute(ReportItemEmitterExecutor.java:46)
    at org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor.java:43)
    at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:46)
    at org.eclipse.birt.report.engine.internal.executor.l18n.LocalizedReportItemExecutor.execute(LocalizedReportItemExecutor.java:34)
    at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:65)
    at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:92)
    at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:100)
    at org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:249)
    at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:269)
    at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:86)
    at org.eclipse.birt.report.service.ReportEngineService.runReport(ReportEngineService.java:1325)
    at org.eclipse.birt.report.service.BirtViewerReportService.runReport(BirtViewerReportService.java:158)
    at org.eclipse.birt.report.service.actionhandler.BirtRunReportActionHandler.__execute(BirtRunReportActionHandler.java:81)
    at org.eclipse.birt.report.service.actionhandler.BirtGetPageActionHandler.__checkDocumentExists(BirtGetPageActionHandler.java:58)
    at org.eclipse.birt.report.service.actionhandler.AbstractGetPageActionHandler.prepareParameters(AbstractGetPageActionHandler.java:118)
    at org.eclipse.birt.report.service.actionhandler.AbstractGetPageActionHandler.__execute(AbstractGetPageActionHandler.java:103)
    at org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(AbstractBaseActionHandler.java:90)
    at org.eclipse.birt.report.soapengine.processor.AbstractBaseDocumentProcessor.__executeAction(AbstractBaseDocumentProcessor.java:47)
    at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.executeAction(AbstractBaseComponentProcessor.java:143)
    at org.eclipse.birt.report.soapengine.processor.BirtDocumentProcessor.handleGetPage(BirtDocumentProcessor.java:87)
    at sun.reflect.GeneratedMethodAccessor78.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.process(AbstractBaseComponentProcessor.java:112)
    at org.eclipse.birt.report.soapengine.endpoint.BirtSoapBindingImpl.getUpdatedObjects(BirtSoapBindingImpl.java:66)
    at sun.reflect.GeneratedMethodAccessor77.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)
    at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)
    at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)
    at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
    at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
    at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doPost(BirtSoapMessageDispatcherServlet.java:265)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
    at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:122)
    at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
    at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:360)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:503)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:229)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:429)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.Server.handle(Server.java:370)
    at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)
    at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:982)
    at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1043)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:696)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:53)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Unknown Source)
    Caused by: org.eclipse.birt.data.engine.core.DataException: A BIRT exception occurred. See next exception for more information.
    Can not convert the value of None to Integer type.
    at org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:123)
    at org.eclipse.birt.data.engine.expression.ExprEvaluateUtil.evaluateExpression(ExprEvaluateUtil.java:88)
    at org.eclipse.birt.data.engine.impl.BindingColumnsEvalUtil.evaluateValue(BindingColumnsEvalUtil.java:201)
    at org.eclipse.birt.data.engine.impl.BindingColumnsEvalUtil.getColumnsValue(BindingColumnsEvalUtil.java:161)
    at org.eclipse.birt.data.engine.impl.ResultIterator.prepareCurrentRow(ResultIterator.java:784)
    at org.eclipse.birt.data.engine.impl.ResultIterator.(ResultIterator.java:168)
    at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:222)
    at org.eclipse.birt.report.engine.data.dte.QueryResultSet.(QueryResultSet.java:98)
    at org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExecuteQuery(DteDataEngine.java:168)
    at org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:83)
    at org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:275)
    at org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1947)
    at org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:80)
    ... 71 more
    Caused by: org.eclipse.birt.core.exception.CoreException: Can not convert the value of None to Integer type.
    at org.eclipse.birt.core.data.DataTypeUtil.toInteger(DataTypeUtil.java:276)
    at org.eclipse.birt.core.data.DataTypeUtil.convert(DataTypeUtil.java:104)
    at org.eclipse.birt.data.engine.expression.ExprEvaluateUtil.evaluateExpression(ExprEvaluateUtil.java:84)
    ... 82 more

  • Report generation using jsp

    I am developing a website using jsp on tomcat.The site required a number of online report generation option from database(mysql).
    My problem is-
    1.how to generate different types of report other than simple html tag embedded within jsp .
    2.How to store all those reports in a file(.txt or .doc).
    N.B I dont want to use any reporting tool.

    Mantosh,
    Have you seen this developer zone article which details accessing Citadel Data using COM+ and ADO?
    http://zone.ni.com/devzone/conceptd.nsf/webmain/725A6C3843F13C8786256EA600633724#6
    Also, this KB article provides more detail on how to access Citadel data using SQL commands and I think will help answer your question:
    http://digital.ni.com/public.nsf/websearch/C7D32F9A59D4637086256A7200692F30?OpenDocument
    --Paul Mandeltort
    Automotive and Industrial Communications Product Marketing

  • LabView database connectivity toolkit 1.0.1 compatibility with MS-ACCESS 2010 / Labview report generation toolkit for Office 1.1.3 compatibility with Office 2010

    In the very near future we will be forced to upgrade to Office 2010 Company wide and I am a little concerned with some of our older test platforms that have applications built in LabView 8.2.1.  These applications save data to MS-ACCESS 2000 databases using the LabView database connectivity toolkit 1.0.1.  Office 2003 is also loaded on these test platforms with all test reports generated using the LabView report generation toolkit for Office 1.1.3.
    I have not gotten my hands on a copy of Office 2010 yet to see if there will be any compatibility issues.  Does anyone have any experience in this area?

    The MS-Access part is fairly well isolated through the ADO interface LabVIEW uses. The only possible problems there IMHO are difficulties with possible Acess compatibilities itself such as an example, SQL statement you may have invoked directly through the ADO interface. Maybe you did use a depreciated command back then that has since been removed. As long as the only thing you do are simple INSERT and SELECT statements only, I would expect it to just keep working.
    The Report Generation interface is a different beast. Microsoft manages to change the Automation interface with every version of office in a way that strongly binding applications like LabVIEW break on. There is no good way around that except not changing those methods, but that is a cause that has been lost already. You will certainly have to verify the version dependant Report Generation API VIs to still work with Office 2010 and most likely you will have to make some changes to those VIs to make them work again with the modified ActiveX interface of Office 2010. Note, that I have no experience with porting report generation to Office 2010 but I have had some headaches from porting that between Office 97, 2000, 2003, and 2007.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Open vi error for report generation toolkt

    Originally it works fine.
    Now I upgrade to win7, LV9 and office2010.
    To open the old program by 8.6.1, I reinstalled LV 8.6.1 and report generation toolkit.
    But still got the error as attached.
    Any suggestion, thanks.
    Attachments:
    ss.png ‏184 KB

    1. MS Office 2010 is not yet supported, since it's still just a beta. I believe there are couple of changes that Microsoft make, and it could cause a problem.
    2. LabVIEW 8.6.1, and all its toolkit is not supported on Windows 7. This could cause a problkem also.
    In conclusion, you should use LabVIEW 2009, Report Generation Toolkit 2009, Windows 7, and downgrade office to XP, 2003 or 2007.
    More information: http://digital.ni.com/public.nsf/allkb/C9408B9F08D​711E786256F3300701D01

  • Report generation toolkit and signal express user step : problem of closing reference in "Stop" event

    Hi all,
    I'm trying to make a package of Vis to easily make Excel reports with Signal Express. I'm working on LabVIEW 8.2.1.
    I'm using the report generation toolkit, so I build a .llb from my project which contains all the hierarchy of my steps, but also the hierarchy of dynamic VIs called.
    I have made some steps, like "Open Workbook", "Write Data", etc.
    My steps run well, excepts one step : "Close Workbook".
    If my "Close Workbook" step is firing on "Run" Signal Express event, I have no error, so my reference is properly closed.
    But if my "Close Workbook" step is firing on "Stop" Signal Express event, I have an error "1", from "Generate Report Objectrepository.vi".
    I feel that I'm trying to use a reference which has been killed in the "Stop" step...
    I would like to know what exactly do Signal Express on "Stop" event and why my close function does'nt run well.
    Thanks,
    Callahan

    Hi Callahan,
    SignalExpress (SE for short) does the following on the Stop event:
    1. Takes the list of parameters that SE found on your VI's connector pane, and sets the values that the user set from the "Run LabVIEW VI" configuration page, if any.
    2. Then tells the VI that SE is running the Stop event by setting the Enum found on your VI's front panel. This in turn should produce some boolean values telling your VI to execute the Stop case.
    3. The VI is then run, with those values and states.
    4. SE checks to see if any errors where returned.
    5. Since this is the Stop event, SE releases the reference to the VI which it possesses.
    Questions for you would be, is the reference to your Workbook linked to a control on your connector pane, or held in a uninitialized Shift Register. If it's held in a Shift Register, SE would not be aware of it, and would not be able to affect that reference.
    Hope that helps. Feel free to post your LLB if it doesn't.
    Phil

  • Pop up text on clicking link on a sql report

    Hi
    I'm using apex 3.2
    I've a sql report like below
    taskId(edit) Task_details Notes owner .....
    What I want to do is if I click on taskId which is edit link ,pop up text box should open where I can add notes to that row.
    How can I achive this?
    Thanks in advance

    Hi,
    Take a look at the following blog posts and see if they can help you get what you are looking for (there are sample applications in them showing the functionality):
    http://monkeyonoracle.blogspot.com/2010/07/modal-pop-up-with-dynamic-actions.html
    http://www.danielmcghan.us/2008/12/popup-in-report.html
    Hope that's useful for you.
    Regards,
    Sergio

  • Dublicate Value In HTML PL/SQL Report

    hi,
    i have to enter item name and item Price iinto transaction_details by using a form and labour Work, labour amount into LAB_WORK_DTL table using a form .
    Now Problem is when i fetch these value in to PL/SQL Report then it's shows me double value like My Total Amount is 100 Then It show Me 200 and if there is two Values eg A , B then in report it's shows me A ,B , A, B, these two Value Shows Me in four Rows .How can i remove Dublicate Values .Why it does show me that double value . My code is below
    How can i remove this problem .
    declare
    SA NUMBER;
    tot number;
    TH NUMBER;
    va number;
    am number;
    lst number;
    tst number;
    st NUMBER;
    cursor c2 is select
    T.VAT,
    SUM(T.AMOUNT) AMOUNT,
    SUM(T.VAT_AMOUNT) VAT_AMOUNT
    from transaction_details T FULL JOIN LAB_WORK_DTL L
    ON T.BILL_NO = L.BILL_NO
    WHERE T.BILL_NO = :P27_BILL_NO
    GROUP BY T.bill_no,t.vat, T.bill_date, T.vehicle_no, T.PARTY_NAME;
    BEGIN
    FOR x IN(SELECT t.item_name, t.qty,t.rate, t.bill_no
    FROM transaction_details t,LAB_WORK_DTL l where t.bill_no=l.bill_no(+) and t.bill_no=:p27_bill_no
    LOOP
    HTP.P('<tr>
    <td width="2%"> </td>
    <td width="55%" align="left"> '|| HTF.escape_sc (x.item_name)||'</td>
    <td width="15%" ALIGN="right">'|| HTF.escape_sc (x.qty)||'</td>
    <td width="15%" ALIGN="right">'|| HTF.escape_sc (x.rate)||'</td>
    <td width="25%" ALIGN="right">'|| HTF.escape_sc (x.qty)* HTF.escape_sc (x.rate)||'
    </td>
    </tr>');
    END LOOP;
    tot:=0;
    bc:=0;
    KA:=0;
    open c2;
    loop
    FETCH c2 INTO va,am,vat_am;
    exit when c2%notfound;
    tot:=nvl(tot+am,0);
    bc:=nvl(bc+vat_am,0);
    end loop;
    close c2;
    HTP.P('<tr>
    <td width="38">  </td>
    <td width="29"> </td>
    <td width="447"> </td>
    <td>  </td>
    <td width="173">
    <p align="Right">-------------------</td>
    </tr>
    <tr>
    <td width="38"> </td>
    <td width="447"> TOTAL</td>
    <td> </td>
    <td width="95"></td>
    <td width="172">
    <p align="right">'
    || nvl(HTF.escape_sc (tot),0)
    ||'</td>
    </tr>');
    </table></body>
    </html>');
    END;
    Thanks
    Manoj Kaushik
    Edited by: Manoj Kaushik on Apr 8, 2010 11:01 PM

    hi,
    this is my Complete Code But I facing Dublicate Value Error .
    In that Code In Total Amount Of All Item Price Show me Jus Double.
    How Can I remove it.
    declare
    a number;
    bd date;
    b varchar2(20);
    c varchar2(50);
    d varchar2(50);
    e varchar2(50);
    f varchar2(50);
    g varchar2(50);
    h varchar2(4000);
    la NUMBER;
    p NUMBER;
    SA NUMBER;
    K NUMBER;
    FA NUMBER;
    HA NUMBER;
    KA NUMBER;
    KH NUMBER;
    MA NUMBER;
    cnt NUMBER;
    tot number;
    l number;
    TH NUMBER;
    FS NUMBER;
    va number;
    am number;
    vat_am number;
    bc NUMBER;
    lst number;
    tst number;
    st NUMBER;
    c_tra number;
    c_lab number;
    cursor c1 is select T.bill_no,T.bill_date,T.vehicle_no,T.PARTY_NAME
           from  transaction_details T FULL JOIN LAB_WORK_DTL L
    ON    T.BILL_NO = L.BILL_NO
    WHERE T.BILL_NO = :P27_BILL_NO
    GROUP BY T.bill_no, T.bill_date, T.vehicle_no, T.PARTY_NAME;
    cursor c2 is select
           T.VAT,
           SUM(T.AMOUNT) AMOUNT,
           SUM(T.VAT_AMOUNT) VAT_AMOUNT
    from  transaction_details T FULL JOIN LAB_WORK_DTL L
    ON    T.BILL_NO = L.BILL_NO
    WHERE T.BILL_NO = :P27_BILL_NO
    GROUP BY T.bill_no,t.vat, T.bill_date, T.vehicle_no, T.PARTY_NAME;
    cursor c3 is select L.service_tax,SUM(L.LABOUR_AMT) LABOUR_AMT,
           SUM(L.SERVICE_TAX_AMT) SERVICE_TAX_AMT
    from  transaction_details T FULL JOIN LAB_WORK_DTL L
    ON    T.BILL_NO = L.BILL_NO
    WHERE T.BILL_NO = :P27_BILL_NO
    GROUP BY T.bill_no,L.service_tax, T.bill_date, T.vehicle_no, T.PARTY_NAME;
    cursor c4 is select
           T.VAT,
           SUM(T.AMOUNT) AMOUNT,
           SUM(T.VAT_AMOUNT) VAT_AMOUNT
    from  transaction_details T FULL JOIN LAB_WORK_DTL L
    ON    T.BILL_NO = L.BILL_NO
    WHERE T.BILL_NO = :P27_BILL_NO
    GROUP BY T.bill_no,t.vat, T.bill_date, T.vehicle_no, T.PARTY_NAME;
    cursor c5 is select L.service_tax,SUM(L.LABOUR_AMT) LABOUR_AMT,
           SUM(L.SERVICE_TAX_AMT) SERVICE_TAX_AMT
    from  transaction_details T FULL JOIN LAB_WORK_DTL L
    ON    T.BILL_NO = L.BILL_NO
    WHERE T.BILL_NO = :P27_BILL_NO
    GROUP BY T.bill_no,L.service_tax, T.bill_date, T.vehicle_no, T.PARTY_NAME;
    BEGIN
    select chasis_no,ENGINE_NO,MAKE,MILEAGE into c,d,e,f from VEHICLE_DETAILS where vehicle_no =:P27_VEHICLE_NO;
    select ADDRESS into h from PARTY_DETAILS where PARTY_NAME =:p27_PARTY_NAME;
    open c1;
    FETCH c1 INTO a,bd,b,g;
    htp.p('<html>
    <body leftmargin="0" rightmargin="0">
    <table border="1" width="100%" bordercolorlight="#003366" cellspacing="0" bordercolordark="#003366" id="table1">
         <tr>
              <td colspan="2">
              <table border="1" width="100%" cellspacing="0" cellpadding="0" id="table3">
                   <tr>
                        <td width="50"> </td>
                        <td width="21"> </td>
                        <td> </td>
                   </tr>
    <tr>
    <td width="50"><b>
    </b></td>
    <td width="21"><b></b></td>
    <td align ="left">
    <font size="4" face="Arial Black">'||HTF.escape_sc(g)||'</font></td>
                   </tr>
                   <tr>
                        <td width="50"> </td>
                        <td width="21"> </td>
                        <td> </td>
                   </tr>
                   <tr>
         <td width="50"><b>
         </b></td>
                   <td width="60"><b></b></td>
    <td rowspan="4">
    <font size="4" face="Arial Black">'||HTF.escape_sc(h)||'</font></td>
                   </tr>
                   <tr>
                        <td width="50"> </td>
                        <td width="21"> </td>
                   </tr>
                   <tr>
                        <td width="50"> </td>
                        <td width="21"> </td>
                   </tr>
                   <tr>
                        <td width="50"> </td>
                        <td width="21"> </td>
                   </tr>
              </table>
              </td>
              <td width="44%" colspan="3">
              <table border="1" width="100%" cellspacing="0" cellpadding="0" id="table4">
                   <tr>
                        <td width="53"> </td>
                        <td width="104"><b></b></td>
                        <td width="10"></td>
                        <td ><font size="5" face="Arial Black">     ' || HTF.escape_sc(a) ||'</font> </td>
                   </tr>
                   <tr>
                        <td width="53"> </td>
                        <td width="104"><b></b></td>
                        <td width="10"></td>
         <td ><font size="5" face="Arial Black">     ' || HTF.escape_sc(bd) ||'</font></td>
                   </tr>
                   <tr>
                        <td width="53"> </td>
                        <td width="104"><b>
                        </b></td>
                        <td width="10"></td>
              <td ><font size="5" face="Arial Black">     '|| HTF.escape_sc(b) ||'</font> </td>
                   </tr>');
    CLOSE c1;
                   htp.p('<tr>
                        <td width="53"> </td>
                        <td width="104"><b>
                        </b></td>
                        <td width="10"></td>
         <td ><font size="5" face="Arial Black">     ' || HTF.escape_sc (c) ||'</font></td>
                   </tr>
                   <tr>
                        <td width="53"> </td>
                        <td width="104"><b>
                        </b></td>
                        <td width="10"><b></b></td>
                        <td ><font size="5" face="Arial Black">     ' || HTF.escape_sc (d) ||'</font></td>
                   </tr>
                   <tr>
                        <td width="53"> </td>
                        <td width="104"><b>
                        </b></td>
                        <td width="10"><b></b></td>
                        <td ><font size="5" face="Arial Black">     ' || HTF.escape_sc (e) ||'</font></td>
                   </tr>
                   <tr>
                        <td width="53"> </td>
                        <td width="104"><b>
                        </b></td>
                        <td width="10"><b></b></td>
                        <td ><font size="5" face="Arial Black">     ' || HTF.escape_sc (f) ||'</font></td>
                   </tr>
              </TABLE>
              </td>
         </tr>
    <tr><td><br></td><td><br></td><td><br></td><td><br></td><td><br></td></tr>
    <tr><td><br></td><td><br></td><td><br></td><td><br></td><td><br></td></tr>
    <tr><td><br></td><td><br></td><td><br></td><td><br></td><td><br></td></tr>
    <tr><td><br></td><td><br></td><td><br></td><td><br></td><td><br></td></tr>
    select count(*) into c_tra from transaction_details  where bill_no=:p27_bill_no;
    select count(*) into c_lab from lab_work_dtl  where bill_no=:p27_bill_no;
    if c_tra>0 and c_lab=NULL then
    FOR x IN(SELECT distinct t.item_name, t.qty,t.rate, t.bill_no
    FROM transaction_details t,LAB_WORK_DTL l  where t.bill_no=l.bill_no(+) and t.bill_no=:p27_bill_no
    LOOP
         HTP.P('<tr>
              <td width="2%"> </td>
              <td width="55%"  align="left"> '|| HTF.escape_sc (x.item_name)||'</td>
              <td width="15%" ALIGN="right">'|| HTF.escape_sc (x.qty)||'</td>
              <td width="15%" ALIGN="right">'|| HTF.escape_sc (x.rate)||'</td>
              <td width="25%" ALIGN="right">'|| HTF.escape_sc (x.qty)* HTF.escape_sc (x.rate)||'
              </td>
         </tr>');
    END LOOP;
    tot:=0;
    bc:=0;
    KA:=0;
    open c2;
    loop
    FETCH c2 INTO va,am,vat_am;
    exit when c2%notfound;
    tot:=nvl(tot+am,0);
    bc:=nvl(bc+vat_am,0);
    end loop;
    close c2;
    KA :=nvl(tot+bc,0);
    HTP.P('<tr>
    <td width="38">  </td>
    <td width="29"> </td>
    <td width="447"> </td>
    <td>  </td>
    <td width="173">
    <p align="Right">-------------------</td>
    </tr>
    <tr>
    <td width="38"> </td>
    <td width="447"> TOTAL</td>
    <td> </td>
    <td width="95"></td>
    <td width="172">
    <p align="right">'
    || nvl(HTF.escape_sc (tot),0)
    ||'</td>
    </tr>');
    open c4;
    loop
    FETCH c4 INTO va,am,vat_am;
    exit when c4%notfound;
    HTP.P('<tr>
    <td width="38">  </td>
    <td width="446"> VAT  '||nvl(HTF.escape_sc (va),0)||'% OF Rs.'||nvl(HTF.escape_sc (am),0)||'</td>
    <td width="116"> </td>
    <td></td>
    <td width="172">
    <p align="right">'
    || nvl(HTF.escape_sc (vat_am),0)
    ||'</td>
    </tr>');
    end loop;
    CLOSE c4;
    HTP.P('<tr>
    <td>  </td>
    <td width="30">  </td>
    <td width="118">  </td>
    <td width="95"> </td>
    <td width="173">
    <p align="Right">------------------</td>
    </tr>
    <tr>
    <td>  </td>
    <td width="446" align="left"> TOTAL</td>
    <td width="118"> </td>
    <td width="95"></td>
    <td width="173">
    <p align="right">'
    || nvl(HTF.escape_sc (KA),0)
    ||'</td>
    </tr>
    <tr>
    <td>  </td>
    <td width="446" align="left"> LABOUR CHARGES :-</td>
    <td width="118"> </td>
    <td width="95"></td>
    <TD width="173"></td>
    </tr>');
    elsif c_lab>0 and c_tra=NULL THEN
    FOR Y IN(SELECT l.WORK_DETAIL,l.LABOUR_AMT
    FROM transaction_details t,LAB_WORK_DTL l WHERE t.bill_no(+) =l.bill_no and l.bill_no =:P27_BILL_NO
    LOOP
         HTP.P('<tr>
    <td>  </td>
    <td width="446" align="left"> '||nvl(HTF.escape_sc (Y.WORK_DETAIL),0)||'</td>
    <td width="118"> </td>
    <td width="95"></td>
    <td width="173">
    <p align="right">'|| nvl(HTF.escape_sc(Y.LABOUR_AMT),0)||'</td>
    </tr>');
    END LOOP;
    HTP.P('
    <TR>
    <td>  </td>
    <td width="30"> </td>
    <td width="118"> </td>
    <td width="95"></td>
    <td width="173">  </td>
    </tr>');
    HTP.p ( '<tr>
    <td width="36">  </td>
    <td width="445"> </td>
    <td>  </td>
    <td width="97"> </td>
    <td width="172">
    <p align="Right">------------------</td>
    </tr>');
    sa:=0;
    lst:=0;
    open c3;
    loop
    FETCH c3 INTO st,la,p;
    exit when c3%notfound;
    sa:=nvl(sa+la,0);
    lst:=nvl(lst+p,0);
    end loop;
    close c3;
    TH:=nvl(sa+lst,0);
    FS:=KA+TH;
         htp.p('<tr>
    <td width="36">  </td>
    <td width="445"> TOTAL</td>
    <td> </td>
    <td width="97"></td>
    <td width="172">
    <p align="right">'
    ||nvl(ROUND(HTF.escape_sc (sa),2),0)
    ||'</td>
    </tr>');
    open c5;
    loop
    FETCH c5 INTO st,la,p;
    exit when c5%notfound;
    htp.p('<tr>
    <td width="36">  </td>
    <td width="445"> SERVICE TAX '||nvl(HTF.escape_sc (st),0)||' OF Rs.'||nvl(ROUND(HTF.escape_sc (la),2),0)||'</td>
    <td> </td>
    <td width="97"></td>
    <td width="172">
    <p align="right">'
    || nvl(ROUND(HTF.escape_sc(p),2),0)
    ||'</td>
    </tr>');
    end loop;
    close c5;
    htp.p('<tr>
    <td width="36">  </td>
    <td width="445"> </td>
    <td>  </td>
    <td width="97"> </td>
    <td width="172">
    <p align="Right">------------------</td>
    </tr>');
    htp.p('<tr>
    <td width="36">  </td>
    <td width="445" align="left"> BILL AMOUNT</td>
    <td> </td>
    <td width="97"></td>
    <td width="172" align="right">
    <p >'||ROUND(HTF.escape_sc (FS),2)||'</td>
    </tr>
    <tr>
    <td width="36">  </td>
    <td width="445">
    <p align="left"> '|| f_words(HTF.escape_sc (FS))||'</td>
    <td>  </td>
    <td width="97"> </td>
    <td width="172">
    <p align="Right">------------------</td>
    </tr>');
    ELSE
    FOR x IN(SELECT t.item_name, t.qty,t.rate, t.bill_no
    FROM transaction_details t where t.bill_no=:p27_bill_no
    LOOP
         HTP.P('<tr>
              <td width="2%"> </td>
              <td width="55%"  align="left"> '|| HTF.escape_sc (x.item_name)||'</td>
              <td width="15%" ALIGN="right">'|| HTF.escape_sc (x.qty)||'</td>
              <td width="15%" ALIGN="right">'|| HTF.escape_sc (x.rate)||'</td>
              <td width="25%" ALIGN="right">'|| HTF.escape_sc (x.qty)* HTF.escape_sc (x.rate)||'
              </td>
         </tr>');
    END LOOP;
    tot:=0;
    bc:=0;
    KA:=0;
    open c2;
    loop
    FETCH c2 INTO va,am,vat_am;
    exit when c2%notfound;
    tot:=nvl(tot+am,0);
    bc:=nvl(bc+vat_am,0);
    end loop;
    close c2;
    KA :=nvl(tot+bc,0);
    HTP.P('<tr>
    <td width="38">  </td>
    <td width="29"> </td>
    <td width="447"> </td>
    <td>  </td>
    <td width="173">
    <p align="Right">-------------------</td>
    </tr>
    <tr>
    <td width="38"> </td>
    <td width="447"> TOTAL</td>
    <td> </td>
    <td width="95"></td>
    <td width="172">
    <p align="right">'
    || nvl(HTF.escape_sc (tot),0)
    ||'</td>
    </tr>');
    open c4;
    loop
    FETCH c4 INTO va,am,vat_am;
    exit when c4%notfound;
    HTP.P('<tr>
    <td width="38">  </td>
    <td width="446"> VAT  '||nvl(HTF.escape_sc (va),0)||'% OF Rs.'||nvl(HTF.escape_sc (am),0)||'</td>
    <td width="116"> </td>
    <td></td>
    <td width="172">
    <p align="right">'
    || nvl(HTF.escape_sc (vat_am),0)
    ||'</td>
    </tr>');
    end loop;
    CLOSE c4;
    HTP.P('<tr>
    <td>  </td>
    <td width="30">  </td>
    <td width="118">  </td>
    <td width="95"> </td>
    <td width="173">
    <p align="Right">------------------</td>
    </tr>
    <tr>
    <td>  </td>
    <td width="446" align="left"> TOTAL</td>
    <td width="118"> </td>
    <td width="95"></td>
    <td width="173">
    <p align="right">'
    || nvl(HTF.escape_sc (KA),0)
    ||'</td>
    </tr>
    <tr>
    <td>  </td>
    <td width="446" align="left"> LABOUR CHARGES :-</td>
    <td width="118"> </td>
    <td width="95"></td>
    <TD width="173"></td>
    </tr>');
    FOR Y IN(SELECT l.WORK_DETAIL,l.LABOUR_AMT
    FROM LAB_WORK_DTL l where l.bill_no =:P27_BILL_NO
    LOOP
         HTP.P('<tr>
    <td>  </td>
    <td width="446" align="left"> '||nvl(HTF.escape_sc (Y.WORK_DETAIL),0)||'</td>
    <td width="118"> </td>
    <td width="95"></td>
    <td width="173">
    <p align="right">'|| nvl(HTF.escape_sc(Y.LABOUR_AMT),0)||'</td>
    </tr>');
    END LOOP;
    HTP.P('
    <TR>
    <td>  </td>
    <td width="30"> </td>
    <td width="118"> </td>
    <td width="95"></td>
    <td width="173">  </td>
    </tr>');
    HTP.p ( '<tr>
    <td width="36">  </td>
    <td width="445"> </td>
    <td>  </td>
    <td width="97"> </td>
    <td width="172">
    <p align="Right">------------------</td>
    </tr>');
    sa:=0;
    lst:=0;
    open c3;
    loop
    FETCH c3 INTO st,la,p;
    exit when c3%notfound;
    sa:=nvl(sa+la,0);
    lst:=nvl(lst+p,0);
    end loop;
    close c3;
    TH:=nvl(sa+lst,0);
    FS:=KA+TH;
         htp.p('<tr>
    <td width="36">  </td>
    <td width="445"> TOTAL</td>
    <td> </td>
    <td width="97"></td>
    <td width="172">
    <p align="right">'
    ||nvl(ROUND(HTF.escape_sc (sa),2),0)
    ||'</td>
    </tr>');
    open c5;
    loop
    FETCH c5 INTO st,la,p;
    exit when c5%notfound;
    htp.p('<tr>
    <td width="36">  </td>
    <td width="445"> SERVICE TAX '||nvl(HTF.escape_sc (st),0)||' OF Rs.'||nvl(ROUND(HTF.escape_sc (la),2),0)||'</td>
    <td> </td>
    <td width="97"></td>
    <td width="172">
    <p align="right">'
    || nvl(ROUND(HTF.escape_sc(p),2),0)
    ||'</td>
    </tr>');
    end loop;
    close c5;
    htp.p('<tr>
    <td width="36">  </td>
    <td width="445"> </td>
    <td>  </td>
    <td width="97"> </td>
    <td width="172">
    <p align="Right">------------------</td>
    </tr>
    <tr>
    <td width="36">  </td>
    <td width="445" align="left"> BILL AMOUNT</td>
    <td> </td>
    <td width="97"></td>
    <td width="172" align="right">
    <p >'||ROUND(HTF.escape_sc (FS),2)||'</td>
    </tr>
    <tr>
    <td width="36">  </td>
    <td width="445">
    <p align="left"> '|| f_words(HTF.escape_sc (FS))||'</td>
    <td>  </td>
    <td width="97"> </td>
    <td width="172">
    <p align="Right">------------------</td>
    </tr>');
    END IF;
    HTP.P('</table>
    </body>
    </html>');
    END;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      

  • Add Image column in classic sql report to open a pop page

    I have sql report I want to add a new column which will have image to click, Once user clicks the image a popup page should open.

    Hi Vikram,
    Sorry to bother you, I am very new to apex. Here is my sql query for sql report. Can you please help me.
    <xmp>select
    case
    when ISUPPORT_NUMBER is null or ISUPPORT_NUMBER = 'N/A' then '<a href="javascript:myFunc3(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:#04B404;font-size:12px;">Enter SR Number</p></a>'
    else '<span style="background-color:red;font-weight:bold">'
    || ISUPPORT_NUMBER
    || '</span>'
    end ISUPPORT_NUMBER,
    case
    when ISUPPORT_NUMBER is not null and ISUPPORT_NUMBER != 'N/A' then '<a href="javascript:myFunc4(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:#FF0000;font-size:14px;">'|| MACHINE_NAME ||'</p></a>'
    else '<a href="javascript:myFunc4(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:#04B404;font-size:14px;">'|| MACHINE_NAME ||'</p></a>'
    end MACHINE_NAME,
    FUNCTION,
    VERSION,
    VENDOR_CLUSTER,
    case when used_by is null then '<a href="javascript:myFunc2(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:#04B404;font-size:12px;">Avaliable</p></a>'
    when upper(used_by)=v('APP_USER') then '<a href="javascript:myFunc5(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:blue;font-size:12px;">' || used_by || '</p></a>'
    else used_by
    end used_by,
    case
    when loaned_to is null and ( upper(used_by)=v('APP_USER') or used_by is null) then '<a href="javascript:myFunc(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:#04B404;font-size:12px;">Avaliable</p></a>'
    when upper(used_by)=v('APP_USER') then '<a href="javascript:myFunc6(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:blue;font-size:12px;">' || loaned_to || '</p></a>'
    else loaned_to
    end loaned_to,
    LOANED_TO_EXPIRY_DATE,
    LOAN_INFO,
    decode(SCAN_NAME,null,'<a href="javascript:myFunc3(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:#04B404;font-size:12px;">More Details</p></a>','<a href="javascript:myFunc3(''' || MACHINE_NAME || ''')"><p style="font-weight:bold;color:#04B404;font-size:12px;">More Details</p></a>') SCAN_NAME,
    USERNAME,
    VNC_PASSWORD,
    LAST_UPDATED_BY , </xmp>
    <b>Here I want to add a image column where I can give a link like above to open popup </b>
    from install_dbqa_machines
    Edited by: Sivaramaraju on Jun 19, 2012 9:06 AM
    Edited by: Sivaramaraju on Jun 19, 2012 9:07 AM
    Edited by: Sivaramaraju on Jun 19, 2012 9:08 AM

  • [Interface] - Passing variety parameters/input to PL/SQL report

    Hi,
    I've the PL/SQL report which can allow passing in the parameter, i use '&'.
    the report is given to the end user who do not have the IDE for PL/SQL. the machanism of the report is generated into the spool file and import into excel format.
    now i am wondering how to create a tool using SQL or PL/SQL to allow the end user to choose the parameter(s) dynamically and passing into the PL/SQL to generate the report based on the input selected.
    the parameters like below:
    package code :
    week no :
    year :
    department :
    all the above parameters, the data would be selected from the existing lookup table. the user is allow to select more than 1 input for specified parameter for instance i want to spool report for week 1 until week 5.
    pls advise any solution on this topic. thanks

    hi scoot,
    thank for reply.
    yep, i'm using sql*plus and also sql navigator 4.0 .
    the user don't have the software to interact. i'm thinking of build an simple interface using VB and passing in the parameter then initiate the sql*plus to run the program in background mode.
    but if you have any other solution which not need to use other software to wirte such program , pls let me know immediately. thank

Maybe you are looking for