database loops through query?

access to a field in a table inidcates that rows in 2 related tables and it must be in a query.

all the 3 tables share a field: pgID. It is the primary key of the first table and a field in the other 2.

the first query finds the lines linked by a variable: pgfeat

< cfquery name = "gtpgsfeat" datasource = "mydb" >
SELECT pgID
Pages
WHERE pgfeat = 1
< / cfquery >

I then loop through the query to create a list of all the rows that are returned by the query

< cfoutput >
< cfloop query = "gtpgsfeat" >
< ISDefined ('catz') cfif >
< cfset catz = "#catz #, #gtpgsfeat.pgID # ' >
< cfelse >
< cfset catz = ' #gtpgsfeat.pgID # ' >
< / cfif >
< / cfloop >
< / cfoutput >

I then apply to a query to the linked tables

< cfquery name = "gtpgsfeat1" datasource = "mydb" dbtype = "ODBC" >
SELECT pages.*, pg_cont.*, pg_text.*
PAGES, pg_cont, pg_text
WHERE (pages.pgID IN (#catz #)) AND (pg_cont.pgID (#catz #)) AND (pg_text.pgID (#catz #));
< / cfquery >

the problem. the second query loops itself - times the recordcount of first request - and I get the same time data the recordcount of the first query.

with a recordcount of 3 for the first query, I get a recordcout of 27 (3 X 3 X 3) for the second query...

example:

Abe

Cathy

John

Abe

Cathy

John

Abe

Cathy

John

? what I'm missing here

TNX in advance

Ranger says:

? what I'm missing here

A basic understanding of programming to relational database better than I can tell from your post.  I heard good things about the "Teach yourself SQL in 10 minutes" book by Ben Forta and "Database Design for mere mortals" by Michael Hernandez.  They show you basic JOIN syntax as in this example where you combine all the tables in one record without multiplying all the lines as the code you attempts where made.


     SELECT
          pages.*,
          pg_cont.*,
          pg_text.*
     FROM
          pages INNER JOIN
          pg_cont ON (pages.pgID = pg_contID) INNER JOIN
          pg_text ON (pages.pgID = pg_test.pgID)
     WHERE
          pgfeat = 1

P.S. using the * shortcut in your clause SELECT can cause hard to debug problems if your database table designs are never changed.

Tags: ColdFusion

Similar Questions

  • I want to loop through the data from two different tables using for loop where the query should be replaced at runtime, please help me

    I have the data into two table with the structure of similar column, I want to loop through the data in these two tables

    based on some condition and runtime that I want to put the query in loop for example, the example is given, please help me

    create table ab (a number, b varchar2 (20));

    Insert into ab

    Select rownum, rownum. "" sample "

    of the double

    connect by level < = 10

    create table bc (a number, b varchar2 (20));

    Insert into BC.

    Select rownum + 1, rownum + 1 | "" sample "

    of the double

    connect by level < = 10

    declare

    l_statement varchar2 (2000);

    Boolean bool;

    Start

    bool: = true;

    If it is true, then

    l_statement: =' select * ab ';

    on the other

    l_statement: =' select * from bc';

    end if

    I'm in execute immediate l_statement - something like that, but I don't know

    loop

    dbms_output.put_line (i.a);

    end loop;

    end;

    Something like that, but this isn't a peace of the code work.

    Try this and adapt according to your needs:

    declare

    l_statement varchar2 (2000);

    c SYS_REFCURSOR;

    l_a number;

    l_b varchar2 (20);

    Boolean bool;

    Start

    bool: = true;

    If it is true, then

    l_statement: = "select a, b, AB;

    on the other

    l_statement: = "select a, b from bc;

    end if;

    --

    Open c for l_statement;

    --

    loop

    extract the c in l_a, l_b;

    When the output c % notfound;

    dbms_output.put_line (l_a |') -' || l_b);

    end loop;

    close c;

    end;

    /

  • Work Dbma_scheduler execution of procedure which loops through all the customer drawings in the rear rollers database transaction in case of exception

    Hello

    Need your contributions on the approach to implement a work using dbms_scheduler.

    We have about 2000 drawings. Each schema has a package with 2 procedures.

    The requirement is to create a single job in SYS that loop over each schema and run the procedures specific to a time (once a day) and send a notification by e-mail on success or failure.

    Working script:

    BEGIN

    dbms_scheduler.create_job (job_name = > 'LOAD_EACH_SCHEMA_AUDIT_DATA',)

    job_type = > 'PLSQL_BLOCK ',.

    job_action = > ' BEGIN sys.p_loadaudit;

    END;',

    start_date = > systimestamp,

    repeat_interval = > ' FREQ = MINUTELY; RANGE = 1',

    number_of_arguments = > 0,

    enabled = > true,

    Comments = > "Use repeat interval is every five minutes");

    END;

    /

    Note: to test the end I put him repeat interval to carefully.

    Use of procedure must be running:

    Procedure sys.p_loadaudit:

    CREATE OR REPLACE

    PROCEDURE p_loadaudit

    AS

    v_count NUMBER: = 0;

    lv_error_message VARCHAR2 (4000);

    vstmt VARCHAR2 (4000);

    BEGIN

    I'm IN

    (SELECT username FROM dba_users WHERE username LIKE '% ABCFIRM')

    )

    LOOP

    vstmt: = "begin" | i.UserName | '. pkg_audit_info.p_load_coa; end;';

    EXECUTE immediate vstmt;

    vstmt: = "begin" | i.UserName | '. pkg_audit_info.p_load_am; end;';

    EXECUTE immediate vstmt;

    END LOOP;

    EXCEPTION

    WHILE OTHERS THEN

    lv_error_message: = ' error in procedure p_loadaudit: ' | SQLCODE. "- ERROR -" | SUBSTR)

    SQLERRM, 1, 300). '*' || dbms_utility.format_error_backtrace;

    raise_application_error(-20002,lv_error_message);

    END p_loadaudit;

    /

    Example of a scheme: SCHEMA_01

    create or replace

    PACKAGE pkg_audit_info

    AS

    CursorType type

    IS

    REF

    CURSOR;

    PROCEDURE p_load_COA;

    PROCEDURE p_load_AM;

    END pkg_audit_info;

    /

    create or replace

    Pkg_audit_info body PACKAGE

    AS

    PROCEDURE p_load_COA

    AS

    BEGIN

    INSERT INTO TABLE1();

    EXCEPTION

    WHILE OTHERS THEN

    lv_error_message: = ' error in procedure pkg_audit_info.p_load_COA: ' | SQLCODE

    || "- ERROR -" | SUBSTR (SQLERRM, 1, 300). '*' || dbms_utility.format_error_backtrace;

    RAISE_application_error(-20002,lv_error_message);

    END p_load_COA;

    PROCEDURE p_load_AM

    AS

    BEGIN

    INSERT INTO TABLE2();

    EXCEPTION

    WHILE OTHERS THEN

    lv_error_message: = ' error in procedure pkg_audit_info.p_load_AM: ' | SQLCODE.

    "- ERROR -" | SUBSTR (SQLERRM, 1, 300). '*' || dbms_utility.format_error_backtrace;

    RAISE_application_error(-20002,lv_error_message);

    END p_load_AM;

    END pkg_audit_info;

    /

    Table1 and table1 exist in schema_01.

    All 2000 patterns have same package.procedures.

    For security reasons, I removed the actual code.

    I was able to complete the task successfully. However, when a scheme procedure (SCHEMA_01.pkg_audit_info.p_load_COA) throws an exception, the job fails, and any transaction is rolled back.

    Is it possible to loop through each schema and run the corresponding procedures. Even if the exception occurs, it must restore only for this scheme and continue other patterns in the loop?

    Please let me know if there is a better way to do this. Is the way I'm handling exceptions in the work or the correct procedure?

    Thank you

    Hello

    RAISE_APPLICATION_ERROR will cause the program to exit to the appellant, even if you put it inside a block in the loop, so the statement RAISE or RAISE_APPLICATION_ERROR must be placed in your procedures 'pkg_audit_info.p_load_AM' and 'pkg_audit_info.p_load_coa '. In this way, you can use a block inside the loop and the error in the log.

    I'm IN

    (SELECT username FROM dba_users WHERE username LIKE '% ABCFIRM')

    )

    LOOP

    BEGIN

    vstmt: = "begin" | i.UserName | '. pkg_audit_info.p_load_coa; end;';

    EXECUTE immediate vstmt;

    vstmt: = "begin" | i.UserName | '. pkg_audit_info.p_load_am; end;';

    EXECUTE immediate vstmt;

    EXCEPTION

    WHILE OTHERS THEN

    --> Set the error in a table of otherwise custom event log you won't know what happened for this scheme: don't forget the user name

    END;

    END LOOP;

  • loops through the sections XML &lt; RecieptDetails &gt; and for each record found...

    My input XML file is...
    I get this XML using file adapter...

    <? XML version = "1.0" encoding = "UTF-8"? >
    -< root xmlns:ns2 = "http://www.w3.org/2001/XMLSchema" >
    -< ns2:ReceiptBatch >
    < ns2:FileID > "99999" < / ns2:FileID >
    < ns2:Warehouse > in THE < / ns2:Warehouse >
    'L' < ns2:Revision > < / ns2:Revision >
    < ns2:DocID > A4 < / ns2:DocID >
    -< ns2:Receipt >
    < ns2:DeliveryNo > 123 - OP < / ns2:DeliveryNo >
    < ns2:ProcessDate > 112138 < / ns2:ProcessDate >
    < ns2:ContainerNo > 98765 < / ns2:ContainerNo >
    < ns2:Instructions > TREKAU < / ns2:Instructions >
    < ns2:ReceiptType > 1 < / ns2:ReceiptType >
    < ns2:SuppCustCode > 111 < / ns2:SuppCustCode >
    TREK-Cycle < ns2:SuppCustName > < / ns2:SuppCustName >
    -< ns2:ReceiptDetails >
    < ns2:Line > 1 < / ns2:Line >
    < ns2:ProductCode > 1000 < / ns2:ProductCode >
    < ns2:QuantityAdvised > 1 < / ns2:QuantityAdvised >
    < ns2:QuantityReceived > 1 < / ns2:QuantityReceived >
    < / ns2:ReceiptDetails >
    -< ns2:ReceiptDetails >
    < ns2:Line > 2 < / ns2:Line >
    < ns2:ProductCode > 2000 < / ns2:ProductCode >
    < ns2:QuantityAdvised > 2 < / ns2:QuantityAdvised >
    < ns2:QuantityReceived > 2 < / ns2:QuantityReceived >
    < / ns2:ReceiptDetails >
    -< ns2:ReceiptDetails >
    < ns2:Line > 3 < / ns2:Line >
    < ns2:ProductCode > 2000 < / ns2:ProductCode >
    < ns2:QuantityAdvised > 3 < / ns2:QuantityAdvised >
    < ns2:QuantityReceived > 3 < / ns2:QuantityReceived >
    < / ns2:ReceiptDetails >
    < / ns2:Receipt >
    < / ns2:ReceiptBatch >
    < / root >

    There are 2 tables in the database.
    Table 1 = T1743512
    Table 2 = T2743002

    table - structure

    T1743512-

    DOCO KCOO DTCO LNID LNIX LITM NOTICE USR JOBN UPMJ PID'M CKNU UREC
    123 00026 1 1 1000 1 1 123 - OP OP
    124 00026 1 1 1000 1 1 124 - OP OP
    123 00026 2 2 1000 2 2 123 - OP OP
    123 00026 3 3 1000 3 2 123 - OP OP



    Things to do are:--

    1. Research Notice T1743512 (table) with the following keys:
    1.T1743512. CKNU = < DeliveryNo > XML
    2.T1743512. LNIX = XML < row >
    II. write a record in the T2743002 table for each < RecieptDetails >. (See map below)

    Mapping of the records in the table T2743002 to < ReceiptDetails >

    EDU - "SABSSV".
    EDBT - < EDBT > (the same for all records)
    EDTN - < DeliveryNo > (from the section < reception > XML)
    EDLN - < row > (from < ReceiptDetails > section in XML format)
    EDSP - white
    DOCO - white
    DCTO - white
    KCOO - white
    LNID - white
    LITM - < ProductCode > < ReceiptDetails > section
    UORG - < QuantityAdvised > < ReceiptDetails > section
    UREC - < QuantityReceived > < ReceiptDetails > section
    USER - "SABSSV".
    JOBN - "SOA - 3PL".
    PID - 'PO-ENTRANTS ".
    UPMJ - current Date Julian
    - Hour current HHMMSS



    Please suggest the solution.

    Published by: Prashant_AP on June 22, 2012 12:24 AM

    Hello

    Solution by using a loop in BPEL;
    1 count the number of nodes for ReceiptDetails.
    2 create a counter for loop through each node ReceiptDetails. Use a while loop in BPEL
    3 search T1743512 (table) with DeliveryNo and the line. Make sure that you select the correct line from the ReceiptDetails node element node. This can be done using the counter example of xpatch ns2:ReceiptBatch / ns2:Receipt / ns2:ReceiptDetails [counter] / ns2:Line. Please use the DB adapter.
    I guess that the DeliveryNo can only appear once in the document following your example.
    4. for each receiptDetails you write a record in table too T2743002. Please use the DB adapter.
    5. Since the time increment the counter. This is to ensure that the while loop stops at the point where the counter is greater then the number of nodes to ReceiptDetails.

    I think a better solution is to make the loop in PL/SQL. It will be faster. You specify an input of type of collection in your pl/sql package parameter. Assign all items receiptDetails and DeliverNo line to the PL/SQL package. Within PL/SQL unravel you the closure. With a little luck, you have the T2743002 in the same schema to create the record too. Otherwise create synonyms of the database or database links.

    Good luck

    Thank you

    Sander

  • Looping through a list to create a url string

    Hi all

    This should be easy for someone with a little experience, but for some reason I have problems with it.  I need to create a url string based on the results of the query.  The results of the query are essentially:

    agenda Prix
    125542.00
    238853.50
    125545.00
    885442.47

    I need to create a url like www.something.com/index.cfm string? item1 = 122554 & item1price = 2 & item2 = 23885 & item2price = 3.50 etc etc (I'm actually trying to create the channel and then add it to a url.)  The index must be included also, like item1, item2 but there will be a different result for each order number if that makes sense - this person bought 4 items but someone else could buy 2).

    Can someone give me a good way to do this?  I tried to loop through the query sort, but it does not work for me.  I also tried making a list but no dice.  It seems that it should be so simple.

    Thank you

    Red

    It seems that you overwrite rather than allow adding to your string variable.

    Take one resembles the quick example below.  Note that I have not tested this code.

    http://www.example.com/page.cfm? » >

  • In a table - looping through the rows and the stored procedure call

    APEX version: 3.2.0.00.27

    Hello

    I searched the forum and tried a few things but could not make it work.

    I have a tabular presentation, developed with the help of the ATD (Cascading LOV - method of tabular presentation - AJAX - ATD )

    What I'm trying to do now:
    -After submit and validations, loop through all the lines and
    -call a stored procedure passing 3 parameters obtained from each of the lines on the form of tables. This procedure will be an update of a database table.

    On the forum, I found that I could do the loop "* FOR i IN 1..." APEX_APPLICATION.g_f03. "LOOP COUNT *" syntax.

    Only for testing purposes, I tried just to view information with the following (On Load - after a footer) process (example of Denes Kubicek == > http://deneskubicek.blogspot.com/2009/05/execute-javascript-throuhg-plsql.html):
    declare
      v_today  varchar2 (200);
    begin
    --  :P40_test := APEX_APPLICATION.g_f03(1);
    --  :P40_test2 := APEX_APPLICATION.g_f04.COUNT;
      :P40_test2 := 100;
    
      v_today := to_char (sysdate, 'dd.mm.yyyy');
    
    --FOR i IN 1.. APEX_APPLICATION.g_f03.COUNT LOOP 
    
      :P40_test := APEX_APPLICATION.g_f02(2);
    
      HTP.p ('<script type="text/javascript">');
      HTP.p (   'alert(''Today is '
              || v_today
    --          || APEX_APPLICATION.g_f04(APEX_APPLICATION.g_f03(i))
              || '.\n'
              || 'end!'');'
             );
      HTP.p ('</script>');
    
    --    :P40_test := APEX_APPLICATION.g_f02(APEX_APPLICATION.g_f02(i));
    
    --END LOOP;
    
    end;
    The foregoing would give me a ' * ORA-01403: no data found * ' message. I tried through various variants of APEX_APPLICATION.g_f0* #*, but still can't get anything to display correctly. In commenting on all the lines referring to APEX_APPLICATION.g_f0x above, the date would be are they displayed fine.

    I tried uncomment the FOR... LOOP and play with the code (defining the process runs "On submit - after calculations" and Validations), I got was a ' * ORA-06502: PL/SQL: digital error or value: character conversion number error * "message.

    Here is the script of the form in a table:
    select 
    "V"."MSLINK",                                       -- hidden (number)
    "V"."INSTALLATION_DATE",                        -- editable date picker
    "V"."MANUFACTURER_INDICATOR",              -- editable (cascading LOV -- text)
    "V"."MODEL_INDICATOR",                           -- editable (cascading LOV -- text)
    "V"."DIAMETER_INDICATOR",                      -- editable (LOV -- number)
    "V"."PURPOSE_INDICATOR",                        -- editable (LOV -- text)
    "V"."VALVE_NUMBER",                                -- shown but not editable -- number
    "V"."MODIFY_DATE",                                  -- shown but not editable
    "V"."MODIFY_USER",                                   -- shown but not editable
    "V"."VALVES_STYLE"."FEATURE"                  -- shown but not editable -- number
    from "#OWNER#"."VALVES" "V"
    Where
      "V"."PROJECT_ID" = :P1_PROJECT_NUMBER AND
      "V"."VALVES_DFLAG" = 0
    Regarding the parameters for the stored procedure, it would the MSLINK, VALVE_NUMBER and the VALVES_STYLE. FEATURE.

    Help, please!
    (Sorry for the long post).

    Thank you

    Tan

    Hi, Tan,

    I have not seen that type of object - I've only used custom types for purposes of test years ago and have never used their within Apex!

    One possibility is that the value of checksum being is based on all of the content of these fields, rather than only the part of the FEATURE. If there are other parts of the object, you could include those items as well.

    Otherwise, as you f01 KP for a record, you will need to retrieve the values of the FUNCTION in your PL/SQL code directly from the table (because the user cannot modify these fields, you can be sure that the values in the table will be still valid).

    Andy

  • I need to loop through &lt; cfdirectory

    I need to loop through the query and add a new column for each row in the fileQuery query that contains the a date object represented in the name of the file

    < cfdirectory directory = "#dir #" name = "fileQuery" type = "datelastmodified" >

    the. FileQuery [i] filename is in the following format

    staffID1247date12_30_2000.flv

    (Note that the date is DD MM YYYY)

    Could someone advise me?

    Post edited by: nikos101

    This is because the dateFormat() attribute expects a date object

    Fri Jul 2 00:00:00 GMT + 0100 2010 is a date string

    ColdFusion functions can sometimes figure out a brand of string and automagically date a date one when it should.  But it is far from infallible.

    Is a better pratcice not to rely on it and use the parseDate() or the createDate() more explicitly when necessary.

  • How to loop through DataGrid (ArrayCollection, DataProvider collection)

    I need to loop through a collection ArrayCollection DataProvider or DataGrid (not sure which is best) so that I can insert information in a database through ColdFusion.

    The data grid has three columns: ID, item and quantity.  I have a table that contains these same fields.  The DataGrid control is pre-filled with a list of items.  The user can then enter the quantity of items in the DataGrid.  I then want to store this information in my table.  In ColdFusion, I would accomplish this through CFLOOP, however, in Flex I want to loop through the data grid so that I can get all the items and the quantities that the user has updated.

    I guess I have to do a loop in ActionScript, but I don't know how to do that.  Can anyone provide a suggestion and example code?

    Thanks again!

    Lee

    If this post answers your question or assistance, please mark it as such.

    Here ya go:



    http://www.Adobe.com/2006/mxml '.
    creationComplete = "init (); » >
     
        Import mx.collections.ArrayCollection;
         
    public void init (): void {}
    var ac:ArrayCollection = new ArrayCollection([)
    {Field1: "my one - item a field", Field2: "my field two - point one"},
    {Field1: "my field one - point two", Field2: "my field two - point two"},
    {Field1: "my one - three field element", Field2: "my field two - point three"},
    ]);
    for each {(var point: Object en ac)}
    for each {(var: objet field àle point)}
    trace (Field);
    }
    }
    }
    ]]>
     

  • How to loop through the CSV file

    Hello

    I want to loop through each column in a CSV file.
    And while the closure of each column, I want to loop every line starting with line 2 St.

    I wrote the code below, but it's a loop in the lines from rank 1.
    How can I start the loop from the 2nd row in the CSV file?
    (see code below)

    Can someone tell me how to proceed?

    THX




    <!-Download and read the file CSV - TXT->
    < cffile action = "read" variable = "C:\Documents and Settings\user\Desktop\EM-CSV\test.csv" file = "csvfile" >

    <!-browse the CSV - TXT file on line breaks and insert into the database->
    < table border = "1" >


    < cfloop index = list 'index' = "' #csvfile # ' delimiters =" #chr (10) ##chr (13) #">"

    <!-< cfoutput > #listgetAt('#index#',1, ',') # < / cfoutput > < br >->
    < b >
    < td > < cfoutput #index # > < / cfoutput > < table >
    < td > < cfoutput > #listgetAt('#index#',2, ',') # < / cfoutput > < table >
    < td > < cfoutput > #listgetAt('#index#',3, ',') # < / cfoutput > < table >
    < /tr >

    < / cfloop >
    < /table >

    Hi Like2Flex,

    The problem is that coldfusion does not see

    list = "a, b, c, d.

    as a list of 9 things you expect. He just sees 4 elements a, b, c and d because Coldfusion does not include two delimiters next to each other.

    A solution to the problem is to manually insert a space between two delimiters that are side by side. Here is an example of such a solution




    length of the list: #listlen (list) #

  • Looping through xml in cfscript

    OK, I can loop through xml to get the value of the label and output to a variable. But the problem for me becomes the child tags of a specific loop grouped tag. For example, below, I want to bring together the xml like this.

    Year: 90
    Employer: Bank
    Wages: 2000.00

    Year: 90
    Employer: gas station
    Wages: 1000.00

    OK, I can loop through xml to get the value of the label and output to a variable. But the problem for me becomes the child tags of a specific loop grouped tag. For example, below, I want to bring together the xml like this.

    Year: 91
    Employer: Bank
    Wages: 2500.00

    Year: 91
    Employer: gas station
    Wages: 1500.00


    < year value = "90" >
    < name of employer 'Bank' = >
    < > 2000.00 salaries < / wages >
    < / employer >
    < name of employer 'gas station' = >
    < > 1000.00 salaries < / wages >
    < / employer >
    < / year >

    < year value = "91" >
    < name of employer 'Bank' = >
    < > 2500.00 salaries < / wages >
    < / employer >
    < name of employer 'gas station' = >
    < > 1500.00 salaries < / wages >
    < / employer >
    < / year >

    Thanks in advance,

    Anthony

    This might be easier with a query. Create one with QueryNew() and fill it when you browse the XML. Then use Q of Q to sort by employer, then the year. You can now use the cfoutput group attribute to group by the employer.

  • To loop through the structure of table - using xpath

    Hello

    My logic to BPEL process is as follows:
    a. extract the data in the variable - receiveMessageInputVariable
    The variable 'receiveMessageInputVariable' has in turn of the data in the table structure. (a set of elements)
    b. to transform the data to the target structure
    c. call the target of the link partner to store data in variable 'ServiceInputVariable '.
    The variable "ServiceInputVariable" structure is similar to "receiveMessageInputVariable".

    In the BPEL process "in the process of" level - I have catch-all exception handler - which must send the list of "elements" that failed in a BPEL proceeding.

    i. If my body of the email has the following code as below:
    < % bpws:getVariableData('receiveMessageInputVariable','XXINV_ITEM_PAY_ROW_TYPE','/ns4:XXINV_ITEM_PAY_ROW_TYPE/ITEMLINE/ITEMLINE_ITEM/ITEM_NUMBER') % >

    It recovers only the first record in the table item_number structure successfully. But don't get the other records in the table.

    II. Similarly, I want to print all the elements (such as received) to be available in the body of the email in the following model:

    < % ' Save a "% >
    < % bpws:getVariableData('receiveMessageInputVariable','XXINV_ITEM_PAY_ROW_TYPE','/ns4:XXINV_ITEM_PAY_ROW_TYPE/ITEMLINE/ITEMLINE_ITEM[1]/ITEM_NUMBER') % >
    < % ' < br / > "% >".
    < % 'Save two -' % >
    < % bpws:getVariableData('receiveMessageInputVariable','XXINV_ITEM_PAY_ROW_TYPE','/ns4:XXINV_ITEM_PAY_ROW_TYPE/ITEMLINE/ITEMLINE_ITEM[2]/ITEM_NUMBER') % >
    ....
    ..
    < % "Nth record" - % >
    < % bpws:getVariableData('receiveMessageInputVariable','XXINV_ITEM_PAY_ROW_TYPE','/ns4:XXINV_ITEM_PAY_ROW_TYPE/ITEMLINE/ITEMLINE_ITEM[N]/ITEM_NUMBER') % >

    Please suggest a syntax suitable in my body of the email - which can loop through all the itemline_item table and print all item_numbers.
    (pseudocode below)

    because me in 1... ORA: countNodes (bpws:getVariableData('receiveMessageInputVariable','XXINV_ITEM_PAY_ROW_TYPE','/ns4:XXINV_ITEM_PAY_ROW_TYPE/ITEMLINE/ITEMLINE_ITEM/ITEM_NUMBER'))
    loop
    < % ' article number-"% > < % bpws:getVariableData('i') % >".
    < % APO: getVariableData ('receiveMessageInputVariable', 'XXINV_ITEM_PAY_ROW_TYPE','/ ns4:XXINV_ITEM_PAY_ROW_TYPE/ITEMLINE/ITEMLINE_ITEM/ITEM_NUMBER')% >)
    end loop;


    Thank you
    Shakur

    Hi Shema

    Try the following approach. It can work for you

    1. create an XSD for HTML content








    2. create a XSL, can be that you must do manually, as JDev will not support transformations to HTML. This XSL will map your input XML to HTML file.
    3. create a variable in BPEL type in the XSD above
    4. use assign activity to assign the XSL transformation to the variable set to step #3


    5 copy the variable in the variable of email body



    Query = "" / EmailPayload/ns8: Content / ns8:ContentBody "/ >"

    Basically, the approach described above converts your entry to a value of string whose content is a complete HTML, and you'll use only one value to be assigned to the body of the email.

    Note: Please change the names of Variable/XPATH Expressions / / the name element from the XSL names etc. According to your BPEL file

    Hope this helps you

    Concerning
    LOC.

  • Loops through Excel spreadsheets

    Hello

    I tried to loop through spreadsheets and Excel doc by increasing the grip of the worksheet. But unfortunately, that doesn't seem to be possible and I got an error.

       ExcelRpt_SetWorksheetAttribute(rawDataWorkSheetHandle,ER_WS_ATTR_NAME,"Analysis Data");
        __caErrChk(ExcelRpt_SetWorksheetAttribute(rawDataWorkSheetHandle+1,ER_WS_ATTR_NAME,"something"));
    

    Is it somehow possible to do? I do not have a handle for each worksheet in my workbook of haven...

    Thank you!

    Hello

    Like it or not, you need to obtain the handle of the worksheet if you want to access the attributes of worksheet.
    There is a function called ExcelRpt_GetWorksheetFromIndex to do this.

    This function returns the handle of the worksheet if you provide the 1-based index.
    Take care you need to call CA_DiscardObjHandle after you are finished with this worksheet.

    So the two functions above should be inside your loop.

  • To loop through a range of data

    Hi guys

    I have this set of numbers. 54 55 56 58 59 61 64 66. I want to loop through this set of numbers to give an array of result of 54 55 56 0 58 59 0 61 0 0 64 0 66.

    Simply, I'm trying to insert a zero in the interval + 1 white in this series of numbers. I couldn't find out how.

    Please help me thanks

    See you soon

    PX

    Hi pengxin,.

    See the image as an attachment.

    Mike

  • Looping through the operator stored in the table

    I have a table test

    oprtrop_val
    > =.100
    =50
    < =.10
    <5

    create table test (oprtr varchar2 (5), op_val number);

    Insert test values (' > =', 100);

    Insert into test values ('=', 50);

    insert into test values ("< =', 10");

    Insert test values (' < ', 5);

    I tried to loop through all the conditions of this table, this table is configurable, and there are cases where the new terms will be added and the old conditions can be modified or deleted,

    I wanted to do something like that, is there a way to do it or I have to write manually if condition to test all these cases by taking all the considerartion operator.

    Val: = 500;

    I'm in (select * from test)

    loop

    If val i.oprtr i.op_val then

    dbms_output.put_line ('True Condition is' |: o PRTR);

    end if;

    end loop;

    Please help me if there is a way to do it.

    Hello raj4tech

    Here's an example how you can solve this problem:

    DECLARE

    Val the NUMBER: = 500;

    v_statement VARCHAR2 (500);

    v_result VARCHAR2 (10);

    BEGIN

    FOR I IN (SELECT oprtr, op_val

    OF THE TEST

    )

    LOOP

    BEGIN

    v_statement: = 'SELECT BOX WHEN "| To_char (Val). ' ' || i.oprtr | ' ' || To_char (i.op_val) | "THEN" TRUE"OTHER"FALSE"END AS A RESULT OF THE DOUBLE."

    V_statement EXECUTE IMMEDIATE

    IN v_result;

    DBMS_OUTPUT. PUT_LINE (' "' |") To_char (Val). ' ' || i.oprtr | ' ' || To_char (i.op_val) | ""--> Result: ' | v_result);

    END;

    END LOOP;

    END;

    /

    "500 > = 100 '--> result: TRUE

    '500 = 50'--> result: FALSE

    ' 500 <= 10" ="" --="">result: FALSE ".

    ' 500 < 5"   ="" --=""> result: FALSE ".

    I hope it helps.

    Best regards, David

  • ÖAF - loop through a vo and get values of attribute associated with line

    HI people,

    I need code of the OPS to loop through a VO and retrieve the values of attribute associated with each line.

    I use following code in AM after - vo.invokeMethod ("initQuery", params, classes) - line.

    for (loop = 0 int; loop < vo.getRowCount (); loop ++) {}

    Line resultRow = vo.getCurrentRow ();

    If (resultRow! = null)

    System.out.println ("" + (String) resultRow.GetAttribute ("PARTYID"));

    }

    -resultRow - is done with the null value.

    Please share the code to achieve this.

    Thank you

    NGO

    You must call vo.next () to move to the next row, but this isn't a good method.

    You can browse the lines of the vo in two aspects.

    First one uses an iterator that is more reliable because it does not change the current line. You must create the java vo RowImpl file to do this.

    int fetchRowCount = vo.getFetchRowCount();
    voRowImpl row = null;
    if (fetchRowCount  > 0) {
        RowSetIterator iter = vo.createRowSetIterator("Iter");
            iter.setRangeStart(0);
            iter.setRangeSize(fetchBidderRowCount);
            for (int i = 0; i < fetchBidderRowCount; i++) {
                row = voRowImpl iter.getRowAtRangeIndex(i);
                 //use RowImpl getters
                 Number personId = row.getPersonId();
        }
        iter.closeRowSetIterator();
    }
    

    Second, one is your method proper form:

    for (Row row = rowsVo.first(); row != null; row = rowsVo.next()) {
         Number personId = (Number)row.getAttribute("PersonId");
    }
    

    Kind regards

    Anil.

Maybe you are looking for

  • Satellite 1800 Windows XP - can't get Ethernet/LAN to work

    Hey everybody, I am struggling with this for hours...I installed windows xp on this old laptop, Satellite 1800 PS181C, and I can't get the drivers to work for ethernet can work It worked fine when I had windows 2000 on it, but as the OS crashes const

  • GPIB initialization

    Hi all I am a beginner in LabVIEW, especially on the control of my instrument (vector Network Analyzer, HP8714C) using the interface GPIB/USB (Agilent 82357 B). I can get the information about the interface GPIB on MAX, but I have an EVDR error when

  • Missing PCI device driver

    I did a clean install of Windows 7 ultimate on my laptop HP Pavilion G6.  I have found all the drivers except one.  The details are the following: PCI\VEN_10EC & DEV_5229 & SUBSYS_1841103C & REV_01 PCI\VEN_10EC & DEV_5229 & SUBSYS_1841103C PCI\VEN_10

  • Need to get the sound e-mail notifications in Outlook Express

    I would like to get the sound e-mail notifications in Outlook Express and can not know how to do this. Original title: artachoke47

  • WMP visualizations do not work even after reinstalling WMP11

    I had to replace the disc my laptop Acer Aspire 6920 a TOUGH couple of years and the technician at Staples [where I bought original] was not able to get the Vista Acer's OEM software and since the hidden partition has been lost on the original HARD d