LSMW - How to handle delimited records?
Greetings everyone,
I want to change infotype records with LSMW. I've done this with the use of a batch input recording.
This works, but only when the record is not delimited. Otherwise, the first record is modified but an error is given for subsequent records saying no batch input could be found.
I don't know how to handle this problem. Can anyone please help me?
The txt file is tab delimited but that is not the problem.
I'm talking about another kind of delimit
The problem lies with the database records that I want to change. This works, but the moment the infotype record is delimited (or split), the recording isn't valid anymore (because it doesn't expect another screen).
So then I get an error saying no batch input can be found, and it skips the record(s) and continues with the next pernr.
Similar Messages
-
How to handle multiple records in BPMN process
Hi All,
We are using Oracle BPM 11g.In my requirement,I am using the database adapter to get the data from table and I need to validate the each record and update the status of that record from the BPM Process.But I dont know how to handle if multiple records come at a time.Can anybody please helpout from this problem.
Thanks in advanced.
Narasimha Rao.Can you have a look at this post: http://redstack.wordpress.com/2010/09/30/iteratingtraversing-arrays-in-bpm/
It's solving a different problem, but the key is that it's using a multi-instance subprocess to iterate over an array of "things" that need to be acted in. In your case it's the set of results from the db query rather than the set of tests in the example. But the principle is the same. You'd take collection of rows from the DB and process them in a multi-instance subprocess. The text that begins with the following would be good place to start:
"Now let’s implement the body of our process. We will use the Subprocess object to handle the traversal of the array of tests. Drag a Subprocess from the component palette on the right into the process and drop it on the line between the Start and End nodes."
In the loop characteristics you'd define whether you want to execute serially or in parallel. -
How to Handle Huge record count in JDBC
Hi,
Can we process 20 lakhs records which would size near to 136 MB using JDBC sender channel in a single call and the same need to deliver to Target system which is JDBC too.
Kindly mention which way this can be achieved.
RegardsHi Venkata,
Kindly go through this below link to processing the huge amount of data from the sender JDBC.
http://scn.sap.com/people/peng.shen2/blog/2009/12/23/pi-how-to-handle-high-volume-data-per-jdbc-adapter
https://scn.sap.com/thread/2005124
http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/09/24/jdbc-receiver-scenarios-best-practices--how-to-handle-high-volume-load-stored-procedure-design-part6
Best Regards,
Monikandan. -
How to handle the records that contain different number of columns
hi all,
I have a file (as source data)includes order information like:
H,P001,Smith,Sunnyvale
D,P001,PR97623,150,10.99,Ice cream
D,P001,PR33267,45,32.66,Popcorn
T,P001
H,P003,Williams,San Jose
X,P003,PR23563,19,25.54,Peanuts
T,P003
I want to transfer the file record to three target tables,
the record marked "H" to "Summary" table and sum money of the detail
the record marked "D" to "Detail" table
the record marked "X" to "Error" table
the expect result as below:
Summary table
Order_No Customer Address Total_Money
P001 Smith Sunnyvale 3118.2
(※3118.2=150*10.99+45*32.66)
Detail table
Order_No Prodcut_Id Prodcut_Name Quantity Price
P001 PR97623 Ice cream 150 10.99
P001 PR33267 Popcorn 45 32.66
Error table
Head Order_No Record_No
X P003 6
(※6 is the line no in the file)
How can I do this in ODI , could anyone give some hints?Hi AGUI,
You can do this by the following way,
1) create the File datastore for the file with 6 columns
while creation select the following option file format as Delimited
record seperator as MS-DOS and field sep as other specify "," in the text box.
-- check the file datastore maps correctly by view the data.
2) create the interface int1 for transfer the data from this file to temp table( the temp table should have one more column for getting the line number( it should be the sequence number).
3) create the another interface int2, in this interafce you need to transfer the data from the[b] temp table to Detail table (use filter for gatting D record.
4) create the interace int3 transfer the data from the temp table to Summary table. please keep the total_money field as null for this interace
and use Odi procedure for updating this field with reference of details table.
5) create interface int4 for transfer the error date by transferinf from temp table to error table.
Thanks,
Madha -
Merging records - how to handle deleted records?
hi,
can anyone tell me what is the proper way to handle
deleted records during records update ?
let's say I have 2 customers and I merge them into one
so I need to send to transactional systems that the deleted one
should not longer be active - but how to achive that
(sending deletion info) in MDM ?
thank you for your help,
Regards,
michalHi Michal,
MDM does not delete any records when it merges them. whenever you merge any two records the local id is never lost, it is always present in the edit key mapping.
You can see this info by right clicking on record and select edit key mapping. You will find both the record entries there.
With proper mapping in syndicator, you can get this information for both the records. while mapping map the 'VALUE' field in the source items to the 'LOCAL ID' field in the destination item.
Please let me know if this not help completely and if you have more doubts.
- An -
How to handle equipment records relating to scrapped materials
When a specific material/serial number combination is scrapped off, at present we are marking the associated equipment records with inactive and deleted. This geta bit confusing with other records that may get marked as inactive for other reasons. How does anyone else handle it? At pressent we dont have a scrapped status.
Should storemen have tha ability to mark the records as deleted or should our master data team do that.
Advice appreciatedhi
you may think of using user status as scrapped ,which you can use for differentiating with other records with inactive indicator .
regards
thyagarajan -
How to handle more records in jsp page
i have some 1000 records in an collection( arraylist or iterator or any collection object) , for examples query returns records to me with resultset.
i want to display 50 records each time per page
how to display them and how to control the flow.
plz give me any codes if possible...
thanks all
Message was edited by:
BURAK
Message was edited by:
BURAKsorry I can't understand you, can you please explain it or post here any codes about it?
-
Using LSMW how to handle Value contracts create/change (VA41) /(VA42)
Hi Experts,
Please suggest me how to create and change of value contracts using LSMW.
Actually i got one standard batch input program RVINVB10 in LSMW for create/change for value contracts. but the problem is one field ZWERT - Target Value in Document Currency is not present in the Target structure at item level.
ZWERT - Target Value in Document Currency field is required for my scenario.
Points will be awarded for the Correct answers.
Regards,
Tirumala ReddyHi Ramky,
Thanks for your response.
In LSMW first we have to map all source structure fields to Target structure fields right, ZWERT field is there in my source structure and there is no field matching with ZWERT in the Target structure.
Field name :ZWERT
Field Description: Target Value in document currency.
If you know solution please reply me soon.
Regards,
Tirumala Reddy -
How to handle Error Records in BDC
Dear All,
I have 100 records in flat file but 10 records have error record.
Use on the BDC method, error records should be move to session and remaining process through call Transaction .
Any one help to me.
With Regards,
BaskaranHi,
Do it like this:
Loop at itab into wa.
gv_flag = 'N'.
If gv_flag = 'N'.
Perform...
wa_opts-dismode = 'N'. "for background
wa_opts-updmode ='S'.
wa_opts-defsize = 'X'.
wa_opts-nobinpt = 'X'.
Where wa_opts TYPE ctu_params.
*Call transaction
CALL TRANSACTION 'PA30' USING gi_bdcdata
OPTIONS FROM wa_opts
MESSAGES INTO gi_messtab.
IF sy-subrc EQ 0.
COMMIT WORK.
ELSE.
IF NOT gi_messtab[] IS INITIAL.
LOOP AT gi_messtab INTO wa_messtab.
IF wa_messtab-msgtyp EQ 'E' OR
wa_messtab-msgtyp EQ 'A' OR
wa_messtab-msgtyp EQ 'X' OR
wa_messtab-msgid EQ 'PBAS_SERVICE'.
CLEAR gv_msg.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
id = wa_messtab-msgid
lang = sy-langu
no = wa_messtab-msgnr
v1 = wa_messtab-msgv1
v2 = wa_messtab-msgv2
v3 = wa_messtab-msgv3
v4 = wa_messtab-msgv4
IMPORTING
msg = gv_msg
EXCEPTIONS
not_found = 1
OTHERS = 2.
*In case of no error message returned by BDC
IF sy-subrc = 0.
Sending errors stating which infotypes are not updated.
gv_error_flag = 'Y'.
do th required proccesing here.
ELSE.
gv_error_flag = 'Y'.
statements.
ENDIF.
ENDIF.
CLEAR wa_messtab.
ENDLOOP.
endloop.
Regards,
Rajesh Kumar
Edited by: Rajesh Kumar on Sep 17, 2009 7:58 AM -
DTP Indicator Only Get Delta Once: How to handle deleted records in source
Hi colleagues,
I have checked some messages and blogs, but could not find any solution for deleted records in source system.
My source system is not able to delivere delta for my table of interest. So I checked "Only Get Delta Once" in my DTP and made some tests.
It works very well for changes of existing records of the source table.
But, SAP help on this features wirtes:
...If this is not logically possible because, for example, data is deleted in the source without delivering reverse records, you can set this indicator and perform ...
I checked this feature by selecting less data from source at the second load from the same table. But recordmode does not get an deletion flag for the now missing records. So, the indicator "Only Get Delta Once" does not work like BI standard delta mechanism?
What is wrong?
Thanks and regards,
WolfgangHi,
If you select the option 'Only get delta once', then every request in the PSA will only be loaded into the Data target once. For example. If you load a full request into the PSA through an InfoPackage and then load it to the Cube. In a snapshot scenario, when the new full load comes to the PSA you will need to delete the previous request from the cube before loading the new request.
But if you delete the previous request from the cube, and not from the PSA - and if you haven't checked the 'Only get delta once' flag, when you execute the DTP, it will load both previous and the new requests from the PSA to the cube. In order to avoid this you have 2 options:
1. You can delete a request from the PSA after every successful load into the Cube OR
2. You can check the 'Only get delta once' flag in the DTP so that it won't load any request it has loaded into the cubes previously even if it was deleted from the cube.
Using the second option de-couples the PSA maintenance from your regular data loading and also saves you an additional step of deleting the PSA request in your process chain. -
Handling error records in LSMW
Hi All,
How to handle error records in LSMW.
Out 20 records had, I had 4 record and 10 record captured in error log.
How to process them?
Thanks
SonaliHi Sonali,
You have to re-run LSMW for those records which were recorded in error log. Make sure that the new flat file is error free.
There is no other alternative to this.
Hope this solves your problem.
Regards,
Brajvir -
How to handle table control in lsmw recording method
hi expert please tell me the procedure for how to handle table control in lsmw recording method
Locked for same reason as how to upload data for me01 using LSMW BDC METHOD
Edited by: Matt on May 9, 2011 8:52 AMSri,
just search in SDN search box by giving table control in lsmw you will get hell lot of threads for same.
Amit. -
How to handle Table control in BDC? Difference between BDC & LSMW?
Hi
How to handle Table control in BDC? Difference between BDC & LSMW?
Regards,
RaghuHi ,
the diff b/w normal BDC and with table control is that with table control u can enter as many lineitems as u want..so during recording if u r entering 3 line items..then the program will show (1), (2) and (3) with that.
chane that fixed no to variable.
check that sample code.
in this for new customer...any no of items can be entered.
LOOP AT t_cusdata.
REFRESH t_bdcdata.
ON CHANGE OF t_cusdata-kunnr.
initial screen.
PERFORM bdc_dynpro USING 'SAPMV10A' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'MV10A-VTWEG'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'MV10A-KUNNR'
t_cusdata-kunnr.
PERFORM bdc_field USING 'MV10A-VKORG'
t_cusdata-vkorg. "'HCL'.
PERFORM bdc_field USING 'MV10A-VTWEG'
t_cusdata-vtweg. "'HL'.
DATA: fnam(20) TYPE c,
fnam1(20) TYPE c,
idx(2) TYPE c.
MOVE 1 TO idx.
LOOP AT t_matdata WHERE kunnr = t_cusdata-kunnr.
PERFORM bdc_dynpro USING 'SAPMV10A' '0200'.
CONCATENATE 'MV10A-KDMAT(' idx ')' INTO fnam.
PERFORM bdc_field USING 'BDC_CURSOR'
fnam.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
CONCATENATE 'MV10A-MATNR(' idx ')' INTO fnam1.
PERFORM bdc_field USING fnam1
t_matdata-matnr. "'FIN50'.
PERFORM bdc_field USING fnam
t_matdata-kdmat. "'ABCD'.
idx = idx + 1.
ENDLOOP.
PERFORM bdc_dynpro USING 'SAPMV10A' '0200'.
PERFORM bdc_field USING 'BDC_CURSOR'
'MV10A-MATNR(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=SICH'.
CALL TRANSACTION 'VD51' USING t_bdcdata MODE 'A' .
UPDATE 'S' MESSAGES INTO t_err_mes.
Regards,
Sonika -
How to handle lsmw table control
i have to update line items for tcode : v-45. through LSMW.
please let me know how to handle multiple line items.Hi Bala Krishna,
1. TCode : LSMW.
2. Enter Project name, sub project name and object name.
Execute.
3. Maintain object attributes.
Execute
select Batch Input recording
goto->Recording overview
create
recording name.
enter transaction code.
start recording
do recording as per ur choice.
save + back.
enter recording name in lsmw screen.
save + back
Now there will be 14 steps.
2. MAINTAIN SOURCE STRUCTURES.
Here you have to enter the name of internal table.
display change
create
save + back
3. MAINTAIN SOURCE FIELDS.
display change
select structure
source_fields->copy fields.
a dialogue window will come .
select -> from data file
apply source fields
enter No. of fields
length of fields
attach file
save + back
4. MAINTAIN STRUCTURE RELATIONS
display change
save + back
5. MAINTAN FIELD MAPPING & CONVERSION RULE
display change
click on source field, select exact field from structue and enter
repeat these steps for all fields.
save+back
6. MAINTAIN FIXED VALUES, TRANSACTION, USER DEFINED
execute
save + back
7. SPECIFY FILES.
display change
click on legacy data
attah flat file
give description
select tabulatore
enter
save + back
8. ASSIGN FILE
execute
display change
save + back
9. IMPORT DATA.
execute
display change
save + back
10. DISPLAY IMPORTED DATA
enter ok, it willl show records only.
back
11. CONVERT DATA
execute
display change
save + back
12. DISPLAY CONVERTED DATA
execute
display change
save + back
13. CREATE BATCH INPUT SESSION
tick keep batch input folder
F8
back
14. RUN BATCH INPUT SESSION.
sm35 will come
Object name will be shown here
select object & process
Reward if useful.
Thanks
Aneesh
~from forum. -
How to handle the table control While working with LSMW?
How to handle the table control While working with LSMW?
its possible in lsmw,
Hi,
LSMW will have a Indicator for headr and itam, i do not remember the correct field, but it will have an indicator, check the fields, there will be a single charecter lenght field, that should be the indicator, and using that we can write the logic.
check that single charecter field, it that is X that means the header record is processed, and do the items.
and, this is another way, try this out also
YOu can do this in "Define Source Structures" step,
the HEADER is defined first,
then the DETAIL below the HEADER.
add the fields to the structures.
Both should have some common key field
Please take care that the name of the common field is the same.
Once you do this it is linked. The you have a header and item corresponding to that header. then run the LSMW as you would.
Thanks
Maybe you are looking for
-
Hello, I am trying to allow my users to use my form, fill out the fields, add attachments and then on button click the form will be attached to the document library (already done) and the attachments the user added will be automatically sent to anoth
-
Changes made from application are not reflecting in Database and vice versa
I am updating changes from my Application. However the data in not reflected in the DB. I logged in and can see no change. However, the changes are being reflected in the Application, even after a server restart. Any ideas on this ?? its wierd !!
-
Hi, I have finished a couple of projects now in indesign CS6, and I have left behind quite a mess in my folders. I have unused subfolders, unused images and text files. I would like to have things a bit more structured and clean. I'm looking for
-
Using Switch Excequtive with NI TestStand
Hello I am beginner in NI teststand & NI switch excequtive. I have NI SCXI-1001 Chassis with NI SCXI-1130 switching slots. I need a quick help on how to use switching in NI TestStand. What I am going to do is: generating a signal by a RIGOL Function
-
Is Default Plugin 2.0 / Gecko default plugin ok?
I am trying to figure out what I inadvertently installed (see https://support.mozilla.com/en-US/questions/788293) I clicked on a popup window that asked me to "update firefox" but I think it was not a real firefox update. I thought it might be a plug