How to pass original Record ID of a checkedout Record to Web pane
Hi,
we have defined a web pane in MDM Data Manager to display the results of java program (servlet).
URL defined in console is
http://<App Server>:52000/auom/servlet/ACalculation?records=<r>
records=<r> sends record ID of the selected Record.
Refer to Creating web pane view and displaying web content in MDM Data Manager 5.5 SP3 for more details on it
<b> If the record selected is checked out by user, how can we send original Record ID in the URL? </b>
[ When a record is checked out MDM creates a duplicate record and allows user to update duplicate record, original record is locked. Record IDs of these two are different ]
Regards
Shiva
Hi,
You can try doing this way in the application
1. check if the record is checked out,
If yes, then get the original record id via the command RetrieveOriginalsByCheckoutRecordCommand.
else
You have the original record Id in hand.
Best Regards,
-Prashant.
Similar Messages
-
How to pass version number from source location to records center?
When designing our record management approach, one of the requirements from business is to pass the version number from the source location to records center. They need to know which version has been declared as a record for the same document.
Is there a way to implement this (OOB)? Thank you.Hi,
Based on your description, my understanding is that when you sent a document to records center, you want to pass version number from source location to records center.
When a document is sent to the records Center, we keep its version number as assigned in its original document library as metadata that is submitted along with the document to the Records Center (in the “Properties” sub-folder of the document library in
the Records Center).
Automatically synchronizing that version number directly into the versioning system in the Records Center is something we should probably consider for a future version, but even in the current version we definitely don’t lose that information.
Hope this helps clarify.
Refer to the following article:
http://blogs.msdn.com/b/recman/archive/2006/08/24/715883.aspx
Best Regards,
Lisa Chen
TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact
[email protected] -
How to pass parameter in sql developer for debubing record type
DECLARE
IB_BP_BANK_ACCOUNT_BUF PL/SQL RECORD; ---record type
IP_BP_ID NUMBER;
IOP_ACC_SEQ_NO NUMBER;
OP_ERROR VARCHAR2(200);
BEGIN
IB_BP_BANK_ACCOUNT_BUF := NULL;
IP_BP_ID := NULL;
IOP_ACC_SEQ_NO := NULL;
ORAGTW11.MAINTAIN_BP_BANK(
IB_BP_BANK_ACCOUNT_BUF => IB_BP_BANK_ACCOUNT_BUF,
IP_BP_ID => IP_BP_ID,
IOP_ACC_SEQ_NO => IOP_ACC_SEQ_NO,
OP_ERROR => OP_ERROR
/* Legacy output:
DBMS_OUTPUT.PUT_LINE('IOP_ACC_SEQ_NO = ' || IOP_ACC_SEQ_NO);
:IOP_ACC_SEQ_NO := IOP_ACC_SEQ_NO;
/* Legacy output:
DBMS_OUTPUT.PUT_LINE('OP_ERROR = ' || OP_ERROR);
:OP_ERROR := OP_ERROR;
END;Something like this:
Assuming you have a procedure like this:
CREATE OR REPLACE PROCEDURE abc (p_emp emp%ROWTYPE)
IS
BEGIN
DBMS_OUTPUT.put_line (p_emp.empno);
END;
Then you have to call it from a PL/SQL Block in this way i.e.:
DECLARE
v_emp emp%ROWTYPE;
BEGIN
SELECT *
INTO v_emp
FROM emp
WHERE ROWNUM<=1;
abc(v_emp);
END;
Regards.
Al -
How to pass values for compound primary keys for updating the record in db.
i have a entity bean in my ejb with two primary keys to it...eg. roleid,rolename...
when iam retriving the record i use only one primary key ...so again to modify and update he same record which i retrived is a pbm..
i cannot set the values for the compoundpk,,,
but i can do the update for the bean with single primary key..
i need to know how to pass the values/parameters for the coumpound primary key in my update method...
thanx in advance...
Arjun.GI istantiated a object for the pk class and assign the values for the primary key fields...
Arjun.G -
How to pass multiple records to target side using xquery
Hi Everybody,
I am using xquery transformation.
Input: Source payload contains 5 variables.
Target payload contains 5 variables.
I have input with payload with multiple instance like:
<Input>
<payload1>
<a>1<a>
<b>2<b>
<c>3<c>
<d>4<d>
<e>5<e>
</payload1>
<payload1>
<a>6<a>
<b>7<b>
<c>8<c>
<d>9<d>
<e>10<e>
</payload1>
</Input>
So my requirement is to pass above records into target side,
So I am using xquery Transformation.
I have written code as follows.
(:: pragma bea:global-element-parameter parameter="$tHRecAdv1" element="ns0:THRecAdv" location="../XMLSchemas/THRecAdv.xsd" ::)
(:: pragma bea:global-element-return element="ns1:ShipmentReceiptEBO" location="../../AIAReferenceModelProject/EnterpriseObjectLibrary/Core/EBO/ShipmentReceipt/V1/ShipmentReceiptEBO.xsd" ::)
declare namespace ns2 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Custom/EBO/ShipmentReceipt/V1";
declare namespace ns1 = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/ShipmentReceipt/V1";
declare namespace ns4 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Common/V2";
declare namespace ns3 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Custom/Common/V2";
declare namespace ns0 = "http://diversey.com/THRecAdv";
declare namespace xf = "http://tempuri.org/ShipmentReceiptServicesProject/XMLTransformations/THRecAdvFile_ShipmentReceiptEBO_JDE_XQuery/";
declare function xf:THRecAdvFile_ShipmentReceiptEBO_JDE_XQuery($tHRecAdv1 as element(ns0:THRecAdv))
as element(ns1:ShipmentReceiptEBO) {
for $THRecAdvFields in $tHRecAdv1/ns0:THRecAdvFields
return
<ns1:ShipmentReceiptEBO>
<ns4:Identification>
<ns4:BusinessComponentID>{ data($THRecAdvFields/ns0:JD_WHSE_Code) }</ns4:BusinessComponentID>
<ns4:ID schemeID = "{ (data($THRecAdvFields/ns0:JD_PO_Number)) }"
schemeVersionID = "{ data($THRecAdvFields/ns0:JD_PO_Type) }">{ data($THRecAdvFields/ns0:WMS_InternalPONumber) }</ns4:ID>
<ns4:ApplicationObjectKey>
<ns4:ID>{ data($THRecAdvFields/ns0:JD_BranchPlant) }</ns4:ID>
</ns4:ApplicationObjectKey>
<ns4:Revision>
<ns4:Reason>{ data($THRecAdvFields/ns0:ReturnReceiptReasonCode) }</ns4:Reason>
</ns4:Revision>
</ns4:Identification>
<ns1:ExpectedReceiptDate>{ data($THRecAdvFields/ns0:WMS_ReceiptDate) }</ns1:ExpectedReceiptDate>
<ns4:InvoiceReference>
<ns4:InvoiceIdentification>
<ns4:ID>{ data($THRecAdvFields/ns0:JDE_SupplierInvoiceNumber) }</ns4:ID>
</ns4:InvoiceIdentification>
</ns4:InvoiceReference>
<ns1:ShipmentReceiptLine actionCode = "{ data($THRecAdvFields/ns0:ActionFlag) }">
<ns4:Identification>
<ns4:ID schemeID = "{ data($THRecAdvFields/ns0:JD_PO_LineNumber) }"
schemeVersionID = "{ data($THRecAdvFields/ns0:ExternPONumber) }">{ data($THRecAdvFields/ns0:WMS_ReceiptNumber) }</ns4:ID>
<ns4:ContextID>{ data($THRecAdvFields/ns0:WMSReceivingClerk) }</ns4:ContextID>
<ns4:ApplicationObjectKey>
<ns4:ID schemeID = "{ data($THRecAdvFields/ns0:BatchNumber) }"
schemeVersionID = "{ data($THRecAdvFields/ns0:BatchLineNumber) }">{ data($THRecAdvFields/ns0:JD_LocationCode) }</ns4:ID>
</ns4:ApplicationObjectKey>
<ns4:AlternateObjectKey>
<ns4:ID>{ data($THRecAdvFields/ns0:SupplierCode) }</ns4:ID>
<ns4:ContextID>{ data($THRecAdvFields/ns0:LineNumber_Or_SequenceNumber) }</ns4:ContextID>
</ns4:AlternateObjectKey>
<ns4:Revision>
<ns4:Label>{ data($THRecAdvFields/ns0:Records) }</ns4:Label>
</ns4:Revision>
</ns4:Identification>
<ns1:ReceivedQuantity unitCode = "{ data($THRecAdvFields/ns0:ReceiptUOM) }">{ data($THRecAdvFields/ns0:UnitReceipt) }</ns1:ReceivedQuantity>
<ns1:SourceDocumentTypeCode>{ data($THRecAdvFields/ns0:SKU_Code) }</ns1:SourceDocumentTypeCode>
<ns1:DestinationTypeCode>{ data($THRecAdvFields/ns0:DestinationProcessFlag) }</ns1:DestinationTypeCode>
<ns1:Comment>{ data($THRecAdvFields/ns0:Remarks) }</ns1:Comment>
<ns4:Status>
<ns4:Code>{ data($THRecAdvFields/ns0:ProcessSourceFlag) }</ns4:Code>
<ns4:EffectiveDateTime>{ data($THRecAdvFields/ns0:ADDDATE) }</ns4:EffectiveDateTime>
</ns4:Status>
<ns1:ShipmentReceiptTransaction>
<ns1:ShipmentReceiptTransactionLot>
<ns1:ShipmentReceiptItemLotReference>
<ns1:ExpirationDate>{ data($THRecAdvFields/ns0:ExpiryDate) }</ns1:ExpirationDate>
<ns1:CreationDateTime>{ data($THRecAdvFields/ns0:ProductionDate) }</ns1:CreationDateTime>
</ns1:ShipmentReceiptItemLotReference>
</ns1:ShipmentReceiptTransactionLot>
</ns1:ShipmentReceiptTransaction>
</ns1:ShipmentReceiptLine>
</ns1:ShipmentReceiptEBO>
declare variable $tHRecAdv1 as element(ns0:THRecAdv) external;
xf:THRecAdvFile_ShipmentReceiptEBO_JDE_XQuery($tHRecAdv1)
But while importing this code to OSB,and tested it ,
With 1 payload it successfully shows the data in Target side,
But while testing with multiple line items,i am getting an error as follows.
*Error executing the XQuery transformation: line 14, column 17: {err}FORG0005: expected exactly one item, got 2+ items*
So please provide me the steps how to pass multiple records to target side using xquery.
Regards,
Jyoti NayakHi Jyoti Nayak,
You have to do something like the example bellow, you can not just repeat the inner element, you will need an outer "container" tag. So you will have to change the target element of your xq transformation.
declare function xf:setToList($set1 as element(ns0:set))
as element(ns0:list) {
<ns0:list>
for $pair in $set1/ns0:pair
return
<ns0:entry>
<ns0:key>{ data($pair/ns0:key) }</ns0:key>
<ns0:value>{ data($pair/ns0:value) }</ns0:value>
</ns0:entry>
</ns0:list>
Cheers,
Vlad
Give points - it is good etiquette to reward an answerer points (5 - helpful; 10 - correct) for their post if they answer your question. If you think this is helpful, please consider giving points -
How to pass record Group from Forms with DATA_PARAMETER to Reports Server
How to pass record Group from Forms with DATA_PARAMETER to Reports Server using RUN_REPORT_OBJECT?
When we use products on run time we are using data_parameter for passing record Groups to reports via run_product but now we have to use application server and reports server for same reports.
We met with <FRM-41214 Unable to run reports> for passing DATA_PARAMETER to reports server when used RUN_REPORTS_OBJECT.
How can we pass record Group from Forms with DATA_PARAMETER to Reports Server using RUN_REPORT_OBJECT?
Thanks,
ArifHi Mandeep,
Could you please tell me how can i pass data parameter from forms to report through run_product. -
How to Pass Record Group to Reports Server ?
How to pass record Group from Forms with DATA_PARAMETER to Reports Server using RUN_REPORT_OBJECT?
When we use products on run time we are using data_parameter for passing record Groups to reports via run_product but now we have to use application server and reports server for same reports.
We met with <FRM-41214 Unable to run reports> for passing DATA_PARAMETER to reports server when used RUN_REPORTS_OBJECT.
How can we pass record Group from Forms with DATA_PARAMETER to Reports Server using RUN_REPORT_OBJECT?
Thanks,how come the online help in forms 10g says you can?
or am I missing something.
there is a section on it.
>
Passing Record Groups to Reports or Graphics
You can pass a record group to Reports or Graphics as a DATA parameter. This DATA parameter is a special type of parameter that gives a signal to the integration code to substitute the contents of the record group whose name you give for the results of the query named by the query name you indicate. -
Hi Experts,
I'm inserting new line items in Contract (Outline Agreement) using BAPI_CONTRACT_CHANGE,
my question is how to pass the value of Serial No. to BAPI_CONTRACT_CHANGE in my custom program. I cannot insert new line item if i cannot pass the serial number to the structures in the BAPI.
Thanks in advance.
ireneHi,
Please let me know how it got solved. I have a same requiremet. -
How to Pass Multiple data records into SDATA for a segment
Hi Friends,
I need to Pass data records to Function Module
MASTER_IDOC_DISTRIBUTE for Creating Outbound IDOCs
I am Collecting all the Data Records and Passing into the Structure EDIDC.
Here my problem is
For one Route there are Multiple Customer records.
so my First Parent Segment is ZROUTE
i am passing the Datarecord for this Segment.
and for the Customer Segment , I have 5 Customers,
so i am passing the 5 Data records to SDATA .
Loop at gt_route into gw_route.
Pass the Route data into the Data record SDATA
gw_idocdata-sdata = gw_route_header.
gw_idocdata-segnam = lc_route_header.
gw_idocdata-hlevel = lc_4.
APPEND gw_idocdata TO gt_idocdata.
CLEAR : gw_route_header, gw_idocdata.
Loop at gt_customer into gw_customer
where anlage = gw_route-anlage.
Pass the Customer data into the Data record SDATA
gw_idocdata-sdata = gw_customer.
gw_idocdata-segnam = lc_customer.
gw_idocdata-hlevel = lc_5.
APPEND gw_idocdata TO gt_idocdata.
CLEAR : gw_customer, gw_idocdata.
ENDLOOP
ENDLOOP.
So this customer segment is comming 5 times in my IDOC
Can any one suggest me whether i am going in correct way or not.
I am Getting the IDOC status 26.
Error during syntax check of IDoc (outbound)
I think it is because the IDOC is not yet SET RELEASE.
But i am having the Dought in Passing the data to SDATA fied
of the EDIDC Structure.
Can any one Suggest me.
Thanks in Advance,
GaneshHi,
First of all EDIDC is the control record, EDID4 is the data record. When collecting customer record into idoc_data you need to insert customer's parent segment number.
Eg.
route1, segnum 1.
child 1, segnum 2 and parent segnum = 1
child 2, segnum 3 and parent segnum = 1
child 3, segnum 4 and parent segnum = 1
route 2, segnum 5
child 1, segnum 6 and parent segnum = 5
child 2, segnum 7 and parent segnum = 5
child 3, segnum 8 and parent segnum = 5
Cheers.
...Reward if useful. -
How to pass multiple records to stored procedure??
Hi,
Can a web application call stored procedure (could be JDBC call)with resultset as it's input parameter? I'm sure there has to be some way to deal with this and I will appreciate your feedback. The web page has multiple records in tabular format and submit should save each record. Is it possible to pass all the records at once through resultset instead of calling stored procedure for each one?
I'm thinking to use cursor variable as a input parameter of a stored procedure. But I'm not sure whether stored procedure can open/fetch this cursor variable into record structure. Here's the sample example of cursor variable definition.
TYPE EmpRecTyp IS RECORD (
emp_id NUMBER(4),
emp_name VARCHAR2(10),
job_title VARCHAR2(9),
dept_name VARCHAR2(14),
dept_loc VARCHAR2(13));
TYPE EmpCurTyp IS REF CURSOR RETURN EmpRecTyp;
PROCEDURE save_staff (emp_cv IN EmpCurTyp);
Thanks for your help.
HemalYou can't pass in a result set, but you can make each parameter a PL/SQL table.
Since you also can't pass in a PL/SQL table of records, I typically create a parameter for each "field", with each parameter containing one or more elements. You can then use bulk binding to process the tables in one statement. -
How to pass a value to a bind variable in a query report in oracle apex
Hi Guys,
I have requirement to send weekly reports via email to some users. The users should receive their own records in the report. The user details is stored in a table. What I am planning to do is to create a report query in oracle apex to generate the report and then run a function/procedure via a scheduler to email the report to respective users. Now my query is ............. is it possible to pass a value (user name) to the report query to pull records of only that user? I know we can have bind variables in the report query but I have no idea how to pass a value for bind variables from a function/procedure.
Can anyone help me on this issue or suggest a better approach?
Thanks,
SanYou need to use dynamic sql
But please keep in mind that since you're using Oracle you may be better off posting this in some Oracle forums
This forum is specifically for SQL Server
Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs -
Master-Detail Form (How to pass an item value in Master to Detail field
I have a Master-Detail form. When adding a new record in the Detail section, I expect the primary key in the master record will copy down to the detail record. But, it is not doing that. Does anyone know how to pass the master primary key down to the detail record field.
By the way, query works fine. It knows the master-detail relationship. It is just when creating a new detail record, the key not pass down from the master record.
thanks - Pattyhi,you can do it by:in detail form's foreign key field,set it's default value as master primary key ,example master page p1,primary key as p1_master,detail form p2,foreign key p2_foreign, set p2_foreign key 's default value &p1_master.
Message was edited by:
lixinzhu -
How to pass Itab to "BAPI_SALESORDER_CHANGE"
Requirment : We cancel sales order that have been created but not fulfilled within 7 days.
At present, we do this manually. Can we configure to have the system auto cancel the sales order
after the said period?
selection screen
u2022 Sales organization (P_VKORG like ZSD_REJECT-VKORG)
u2022 Sales office (S_VKBUR for ZSD_REJECT-VKBUR)
u2022 Plant (S_WERKS for ZSD_REJECT-WERKS)
u2022 Sales order type (S_AUART for ZSD_REJECT-AUART)
u2022 Sales order no. (S_VBELN for ZSD_REJECT-VBELN)
u2022 Customer no. (S_KUNNR for ZSD_REJECT-KUNNR)
u2022 Rejection date (S_REJDTE for ZSD_REJECT-REJDATE)
Report format/columns should be as follows:
1. Sales organization (ZSD_REJECT-VKORG)
2. Sales office (ZSD_REJECT-VKBUR)
3. Plant (ZSD_REJECT-WERKS)
4. Customer no. (ZSD_REJECT-KUNNR)
5. Customer name (KNA1-NAME1)
6. Sales order no. (ZSD_REJECT-VBELN)
7. Sales order item (ZSD_REJECT-POSNR)
8. Material no. (VBAP-MATNR)
9. Material description (VBAP-ARKTX)
10. Order quantity (VBAP-KWMENG)
11. Rejected quantity (ZSD_REJECT-REJQTY)
12. Unit of measure (VBAP-VRKME)
13. Rejected net value (ZSD_REJECT-REJVAL)
14. Currency (VBAK-WAERK)
15. Rejection date (ZSD_REJECT-REJDATE)
16. Rejection time (ZSD_REJECT-REJTIME)
17. Rejection user (ZSD_REJECT-REJUSER)
Program : I have created one report & calling bapi BAPI_SALESORDER_CHANGE
TYPES: BEGIN OF t_tab,
vkorg TYPE zsd_reject-vkorg ,
vkbur TYPE zsd_reject-vkbur ,
auart TYPE zsd_reject-auart ,
END OF t_tab.
TYPES: BEGIN OF t_vbak,
vbeln TYPE vbak-vbeln ,
erdat TYPE vbak-erdat ,
waerk TYPE vbak-waerk,
vbtyp TYPE vbak-vbtyp,
auart TYPE vbak-auart,
vkorg TYPE vbak-vkorg ,
vkbur TYPE vbak-vkbur ,
kunnr TYPE vbak-kunnr ,
cmfre TYPE vbak-cmfre ,
gbsta type vpup-gbsta,
costa TYPE vbuk-costa ,
fkstk TYPE vbuk-fkstk,
END OF t_vbak.
TYPES: BEGIN OF t_data,
vbeln TYPE vbak-vbeln ,
waerk TYPE vbak-waerk,
auart TYPE vbak-auart,
vkorg TYPE vbak-vkorg ,
vkbur TYPE vbak-vkbur ,
kunnr TYPE vbak-kunnr ,
cmfre TYPE vbak-cmfre ,
END OF t_data.
TYPES: BEGIN OF t_vbap,
matnr TYPE vbap-matnr ,
vbeln TYPE vbap-vbeln ,
posnr TYPE vbap-posnr,
arktx TYPE vbap-arktx ,
pstyv TYPE vbap-pstyv,
abgru TYPE vbap-abgru,
kwmeng TYPE vbap-kwmeng,
werks TYPE vbap-werks ,
END OF t_vbap.
TABLES *
TABLES : zsd_reject.
INTERNAL TABLES, STRUCTURES & WORK AREAS *
DATA: it_vbak TYPE STANDARD TABLE OF t_vbak WITH HEADER LINE,
it_data TYPE STANDARD TABLE OF t_data WITH HEADER LINE ,
it_vbap TYPE STANDARD TABLE OF t_vbap ,
wa_vbak TYPE t_vbak ,
wa_vbap TYPE t_vbap ,
wa_data TYPE t_data.
PARAMETERS & SELECT-OPTIONS *
DUE TO AN SAP LIMITATION WITH CREATING / CHANGING VARIANTS,
selection screen fields over 45 characters in length should be avoided
SELECTION-SCREEN: BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
PARAMETERS: p_vkorg LIKE zsd_reject-vkorg.
SELECT-OPTIONS: s_vkbur FOR zsd_reject-vkbur,
s_werks FOR zsd_reject-werks,
s_auart FOR zsd_reject-auart,
s_vbeln FOR zsd_reject-vbeln,
s_kunnr FOR zsd_reject-kunnr,
s_rejdte FOR zsd_reject-rejdate.
SELECTION-SCREEN: END OF BLOCK a01.
DATA : p_days TYPE i VALUE 7,
l_checkdate LIKE sy-datum.
START-OF-SELECTION.
l_checkdate = sy-datum - p_days.
SELECT vbak~vbeln
vbak~erdat
vbak~waerk
vbak~vbtyp
vbak~auart
vbak~vkorg
vbak~vkbur
vbak~kunnr
vbak~cmfre
vbup~gbsta
vbuk~costa
vbuk~fkstk
INTO TABLE it_vbak
FROM vbak INNER JOIN vbuk
ON vbakvbeln = vbukvbeln
WHERE vbak~vkorg = p_vkorg
AND vbak~vkbur IN s_vkbur
AND vbak~auart IN s_auart
AND vbak~vbtyp = 'C'
AND vbuk~gbstk NE 'C'.
Requirment :
This checking is only for those order were previously blocked and has been released, which means credit release date not equal to 00.00.0000 and hence program will check rejection logic based on credit release date vs system date > 7 calendar days. For those orders which holding credit release date equals to 00.00.0000 will go through rejection checking
based on order creation date vs system date > 7 calendar days respectively.
LOOP AT it_vbak INTO wa_vbak.
IF NOT wa_vbak-cmfre IS INITIAL.
IF wa_vbak-cmfre > l_checkdate.
DELETE it_vbak FROM wa_vbak.
ENDIF.
ELSE.
IF wa_vbak-erdat > l_checkdate.
DELETE it_vbak FROM wa_vbak.
ENDIF.
ENDIF.
ENDLOOP.
SELECT vbapmatnr vbapvbeln vbapposnr vbaparktx vbap~pstyv
vbapabgru vbapkwmeng vbap~werks INTO TABLE it_vbap
FROM vbap INNER JOIN vbup ON
vbapvbeln = vbupvbeln AND vbapposnr = vbupposnr
FOR ALL entries
IN it_vbak WHERE vbap~vbeln = it_vbak-vbeln AND
gbsta NE 'C'.
I have taken the records in two internal table for header & item it_vbak & it_vbap
now I need to call the BAPI_SALESORDER_CHANGE and pass the internal table to Bapi .
Can anyone please let me know how to pass this into Bapi?
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
salesdocument =
ORDER_HEADER_IN =
order_header_inx =
SIMULATION =
BEHAVE_WHEN_ERROR = ' '
INT_NUMBER_ASSIGNMENT = ' '
LOGIC_SWITCH =
tables
return =
ORDER_ITEM_IN =
ORDER_ITEM_INX =
PARTNERS =
PARTNERCHANGES =
PARTNERADDRESSES =
ORDER_CFGS_REF =
ORDER_CFGS_INST =
ORDER_CFGS_PART_OF =
ORDER_CFGS_VALUE =
ORDER_CFGS_BLOB =
ORDER_CFGS_VK =
ORDER_CFGS_REFINST =
SCHEDULE_LINES =
SCHEDULE_LINESX =
ORDER_TEXT =
ORDER_KEYS =
CONDITIONS_IN =
CONDITIONS_INX =
EXTENSIONIN =
Thanks in advance
Regards
RahulHi,
I am trying to cancel the sales order that have been created but not fulfilled within 7 days.
If this condition is true dump is coming (when I am trying to delete the records from internal table)
if wa_vbak-erdat > l_checkdate.
delete it_vbak from wa_vbak.
endif.
Error analysis
The program attempted to interp 70000200KL " as a number, but since the value contravenes the
this was not possible.
types: begin of t_vbak,
vbeln type vbak-vbeln ,
erdat type vbak-erdat ,
waerk type vbak-waerk,
vbtyp type vbak-vbtyp,
auart type vbak-auart,
vkorg type vbak-vkorg ,
vtweg type vbak-vtweg,
spart type vbak-spart,
vkbur type vbak-vkbur ,
kunnr type vbak-kunnr ,
cmfre type vbak-cmfre ,
gbsta type vpup-gbsta,
costa type vbuk-costa ,
fkstk type vbuk-fkstk,
end of t_vbak.
data : p_days type i value 7,
l_checkdate like sy-datum.
DATA: it_vbak TYPE STANDARD TABLE OF t_vbak WITH HEADER LINE,
it_data TYPE STANDARD TABLE OF t_data WITH HEADER LINE ,
start-of-selection.
l_checkdate = sy-datum - p_days.
select vbak~vbeln
vbak~erdat
vbak~waerk
vbak~vbtyp
vbak~auart
vbak~vkorg
vbak~vtweg
vbak~spart
vbak~vkbur
vbak~kunnr
vbak~cmfre
vbup~gbsta
vbuk~costa
vbuk~fkstk
into corresponding fields of table it_vbak
from vbak inner join vbuk
on vbakvbeln = vbukvbeln
where vbak~vkorg = p_vkorg
and vbak~vkbur in s_vkbur
and vbak~auart in s_auart
and vbak~vbtyp = 'C'
and vbuk~gbstk ne 'C'
and vbak~vbeln = '0000003549'.
sort it_vbak by vbeln.
if not it_vbak[] is initial.
loop at it_vbak into wa_vbak.
if not wa_vbak-cmfre is initial.
if wa_vbak-cmfre > l_checkdate.
delete it_vbak from wa_vbak.
endif.
else.
******Error (short dump here if condition true )***************************
if wa_vbak-erdat > l_checkdate.
delete it_vbak from wa_vbak.
endif.
endif.
endloop.
endif.
Regards
Rahul -
How to pass a single element in an array to XSL from BPEL
In a bpel (2.0) process I have a for-each loop iterating through a list in the original input document. Within that loop I need to construct an input document for a call to a web service based on data in the current node of the list objects I am looping through.
Constructing the input document via BPEL assign activity copies within the for-each loop is an option but due to the complexity of that document I would prefer to use XSL. But I don't know how to pass the index information (ie. the for-each counter) into XSL and use it there (and I would prefer not to have to do so, since that will prevent use of the XSL GUI in jdev), so I would prefer to send the current node of the list as input to XSL instead.
Is it possible to pass a sub-section of an XML document (e.g. one node in the array) as input into XSL rather than the whole document? In other words, I would like to send the current array element from the original input document rather than the entire original input document because I will be using the data within that array element to create the web service input document.
Example:
<forEach parallel="no" counterName="i"
name="ForEachEntry">
<startCounterValue>1</startCounterValue>
<finalCounterValue>$numTimeEntries</finalCounterValue>
If I used the BPEL assign activity to populate the input document I would need lots of copies similar to this:
<copy>
<from>$inputVariable.OteStgTimecardCollection/ns3:OteStgTimecard[1]/ns3:oteStgTimecardDetailCollection/ns3:OteStgTimecardDetail[$i]/ns3:origtransactionreference</from>
<to>$InvokeOteDetailAbsenceErrorStatusService_OteAbsenceDetailFailureService_InputVariable.OteAbsenceDetailFailureServiceInput_msg/ns19:OrigTransactionReference</to>
</copy>
I would prefer to send the current list object as an input variable into an XSL transform:
$inputVariable.OteStgTimecardCollection/ns3:OteStgTimecard[1]/ns3:oteStgTimecardDetailCollection/ns3:OteStgTimecardDetail[$i]
Is there syntax in bpel that would do that?
ThanksYou need use While Element and use Array like Element[number]
With While element you iterate <employee> node
and with Element[number] you can extract information from that node.
I wrote a BPEL that scan a XML file, the input is:
<cliente>
<codigo>01</codigo>
<nombre>Deiby Mauricio Gomez</nombre>
<productos>
<producto>
<nombre>Camisa Polo</nombre>
<precio>50</precio>
</producto>
<producto>
<nombre>Pantalon Lona</nombre>
<precio>100</precio>
</producto>
</productos>
</cliente>
<cliente>
<codigo>02</codigo>
<nombre>Julio Cesar Ayapan</nombre>
<productos>
<producto>
<nombre>Camisa Polo</nombre>
<precio>50</precio>
</producto>
</productos>
</cliente>
In my BPEL I added up all article prices and after that I write to txt file the client and the Total.
Example:
Deiby Gomez, 150
Cesar Ayapan, 50
My while element is this (Please pay attention in bold words):
<while name="While1"
condition="bpws:getVariableData('variable1')<=count(bpws:getVariableData('Receive1_input_files','body','/ns4:clientes/ns4:cliente'))">
<sequence>
<assign name="Assign1">
<copy>
<from expression="sum(bpws:getVariableData('Receive1_input_files','body','/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:productos/ns4:producto/ns4:precio'))"/>
<to variable="Invoke1_process_InputVariable" part="payload"
query="/ns5:process/ns5:cantidad"/>
</copy>
<copy>
<from variable="Receive1_input_files" part="body"
query='/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:codigo'/>
<to variable="Invoke1_process_InputVariable" part="payload"
query="/ns5:process/ns5:id"/>
</copy>
</assign>
<invoke name="Invoke1" inputVariable="Invoke1_process_InputVariable"
outputVariable="Invoke1_process_OutputVariable"
partnerLink="ValidacionBancos2WS" portType="ns5:BPELProcess1"
operation="process" bpelx:invokeAsDetail="no"/>
<switch name="Switch1">
<case condition="bpws:getVariableData('Invoke1_process_OutputVariable','payload','/ns5:processResponse/ns5:resultado')='true'">
<bpelx:annotation>
<bpelx:pattern>Si el cliente es aprobado</bpelx:pattern>
<bpelx:general>
<bpelx:property name="userLabel">Si Aprobado</bpelx:property>
</bpelx:general>
</bpelx:annotation>
<sequence>
<assign name="Assign4">
<copy>
<from variable="Receive1_input_files" part="body"
query='/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:codigo'/>
<to variable="Approved_Write_input" part="body"
query="/ns7:clientes/ns7:cliente/ns7:id"/>
</copy>
<copy>
<from variable="Receive1_input_files" part="body"
query="/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:nombre"/>
<to variable="Approved_Write_input" part="body"
query="/ns7:clientes/ns7:cliente/ns7:nombre"/>
</copy>
<copy>
<from expression="sum(bpws:getVariableData('Receive1_input_files','body','/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:productos/ns4:producto/ns4:precio'))"/>
<to variable="Approved_Write_input" part="body"
query="/ns7:clientes/ns7:cliente/ns7:total"/>
</copy>
</assign>
<invoke name="Invoke2" inputVariable="Approved_Write_input"
partnerLink="fileAdapterWriteApproved"
portType="ns6:Write_ptt" operation="Write"
bpelx:invokeAsDetail="no"/>
</sequence>
</case>
<otherwise>
<sequence name="Sequence1">
<assign name="Assign5">
<copy>
<from variable="Receive1_input_files" part="body"
query='/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:codigo'/>
<to variable="Rechazados_Write_input" part="body"
query="/ns9:clientes/ns9:cliente/ns9:id"/>
</copy>
<copy>
<from variable="Receive1_input_files" part="body"
query="/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:nombre"/>
<to variable="Rechazados_Write_input" part="body"
query="/ns9:clientes/ns9:cliente/ns9:nombre"/>
</copy>
<copy>
<from expression="sum(bpws:getVariableData('Receive1_input_files','body','/ns4:clientes/ns4:cliente[number(bpws:getVariableData("variable1"))]/ns4:productos/ns4:producto/ns4:precio'))"/>
<to variable="Rechazados_Write_input" part="body"
query="/ns9:clientes/ns9:cliente/ns9:total"/>
</copy>
</assign>
<invoke name="Invoke3"
inputVariable="Rechazados_Write_input"
partnerLink="fileAdapterWriteRechazados"
portType="ns8:Write_ptt" operation="Write"
bpelx:invokeAsDetail="no"/>
</sequence>
</otherwise>
</switch>
<assign name="Assign2">
<copy>
<from expression="''"/>
<to variable="Invoke1_process_InputVariable" part="payload"
query="/ns5:process/ns5:id"/>
</copy>
<copy>
<from expression="bpws:getVariableData('variable1')+1"/>
<to variable="variable1"/>
</copy>
<copy>
<from expression="''"/>
<to variable="Invoke1_process_InputVariable" part="payload"
query="/ns5:process/ns5:cantidad"/>
</copy>
</assign>
</sequence>
</while> -
How to pass values at runtime in JDBC - XI - File scenario
Hi friends,
In my scenario, data is coming from R/3 and i need to filter records from oracle database based on this data. There are 4 database tables that need to be queried using 2 select statements. The resultset after the execution of query will be mapped to the target flat file structure.
here are my queries:
1) Can I avoid BPM as data needs to be collected from the two database calls which involves two sender JDBC adapter instances with only one target structure?
2) Can I use stored procedure in this scenario? If yes, than how to pass values to stored procedure at runtime via sender JDBC adapter.
Thanks and regards,
Nitin aggarwal.Hi Nitin,
"..So i want to know if i can write multiple select statements in the stored procedure.."
Read the below line that is mentioned in the SAP help documentation fro Sender JDBC adapter:-
<i>Specify an SQL EXECUTE statement to execute a stored procedure, which contains exactly one SELECT statement.</i>
I dont think it can be achieved...but there must be some workaround for this. You can probably use a join statement.
Read this, again from the documentation:-
<i>The expression must correspond to the SQL variant supported by the relevant JDBC driver. It can also contain table JOINs.</i>
Regards,
Sushumna
Maybe you are looking for
-
how do I get my contacts back after they've disappeared? the contacts are still stored in my phone I just can't access them through my address book; only through Siri. I've restored my phone & that didn't work so what should I do?
-
Validations in Webdynpro ABAP ....
Hi All, Any body tell me whether client side validation is possible in Webdynpro ABAP ? Will I need to write Javascript code in WDA ? Please shade some light. Any help in this regards would be highly appreciated. Thanks, Anil Kumar
-
Oracle Service Bus & Salesforce Integration
Hi there, Does anyone know if there is an Oracle-issued or 3rd party adapter for use with OSB in integrating to Salesforce? I came across this thread created in February, Re: Adapters for Salesforce Integration and was wondering if anyone has any fur
-
Dynamic Description in Analysis for OLAP
hi. I am trying to create an application in Analysis for OLAP where I am trying to populate the Dynamic description based on the value entered by the user. It works in Bex queries, however I don't see the description populated when I create a analysi
-
Hi all I've installed xmonad with pacman: pacman -S xmonad xnomad-contrib dmenu dzen2 and then i executed it via my .xinitrc #!/bin/sh # ~/.xinitrc #exec openbox-session numlockx & exec xmonad But it keeps spitting out error messages when starting X