How to split a PO into 2 iDocs ??
Hello,
We use EDI to send PO's outbound to suppliers via ORDERS05 iDoc. Problem is that most of our suppliers cannot accept EDI PO if it contains more than one "Delivery Address".
I need 2 or more Orders05 iDocs to be created (1 for each Delivery Address) when a PO is created with more than one Delivery address.
For example ... A User creates an EDI enabled PO that contains 3 Delivery addresses with PO# 111111. I need 3 iDocs (111111a, 111111b, and 111111c) to be created so that the EDI supplier system receives 3 separate PO's.
Has anyone heard of a way to accomplish this? Any help is appreciated. Thank you.
Dan Avis
ELSEIF WA_DATA-SEGNAM = 'E1EDK17'.
WA_E1EDK17-QUALF = WA_DATA-SDATA+0(3).
WA_E1EDK17-LKOND = WA_DATA-SDATA+3(3).
APPEND WA_E1EDK17 TO IT_E1EDK17.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDK17.
APPEND WA_DATA1 TO IT_DATA1.
CLEAR WA_DATA1.
ENDIF.
ELSEIF WA_DATA-SEGNAM = 'E1EDK18' AND WA_DATA-SEGNUM = '000012'.
WA_E1EDK181-QUALF = WA_DATA-SDATA+0(3).
WA_E1EDK181-TAGE = WA_DATA-SDATA+3(8).
WA_E1EDK181-PRZNT = WA_DATA-SDATA+11(8).
APPEND WA_E1EDK181 TO IT_E1EDK181.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDK181.
APPEND WA_DATA1 TO IT_DATA1.
CLEAR WA_DATA1.
ENDIF.
ELSEIF WA_DATA-SEGNAM = 'E1EDK18' AND WA_DATA-SEGNUM = '000013'.
WA_E1EDK182-QUALF = WA_DATA-SDATA+0(3).
WA_E1EDK182-TAGE = WA_DATA-SDATA+3(8).
WA_E1EDK182-PRZNT = WA_DATA-SDATA+11(8).
APPEND WA_E1EDK182 TO IT_E1EDK182.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDK182.
APPEND WA_DATA1 TO IT_DATA1.
CLEAR WA_DATA1.
ENDIF.
ELSEIF WA_DATA-SEGNAM = 'E1EDK18' AND WA_DATA-SEGNUM = '000014'.
WA_E1EDK183-QUALF = WA_DATA-SDATA+0(3).
WA_E1EDK183-TAGE = WA_DATA-SDATA+3(8).
APPEND WA_E1EDK183 TO IT_E1EDK183.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDK183.
APPEND WA_DATA1 TO IT_DATA1.
CLEAR WA_DATA1.
ENDIF.
ENDIF.
ELSEIF SEG = 'E1EDP'.
IF WA_DATA-SEGNAM = 'E1EDP01'.
WA_E1EDP01-POSEX = WA_DATA-SDATA+0(6).
WA_E1EDP01-ACTION = WA_DATA-SDATA+6(3).
WA_E1EDP01-PSTYP = WA_DATA-SDATA+9(1).
WA_E1EDP01-KZABS = WA_DATA-SDATA+10(1).
WA_E1EDP01-MENGE = WA_DATA-SDATA+11(15).
WA_E1EDP01-MENEE = WA_DATA-SDATA+26(3).
WA_E1EDP01-BMNG2 = WA_DATA-SDATA+29(15).
WA_E1EDP01-PMENE = WA_DATA-SDATA+44(3).
WA_E1EDP01-VPREI = WA_DATA-SDATA+54(15).
WA_E1EDP01-PEINH = WA_DATA-SDATA+69(9).
WA_E1EDP01-NETWR = WA_DATA-SDATA+78(18).
WA_E1EDP01-NTGEW = WA_DATA-SDATA+132(18).
WA_E1EDP01-GEWEI = WA_DATA-SDATA+150(3).
WA_E1EDP01-MATKL = WA_DATA-SDATA+175(9).
WA_E1EDP01-BPUMN = WA_DATA-SDATA+200(6).
WA_E1EDP01-BPUMZ = WA_DATA-SDATA+206(6).
WA_E1EDP01-BRGEW = WA_DATA-SDATA+257(18).
WA_E1EDP01-WERKS = WA_DATA-SDATA+311(4).
WA_E1EDP01-LGORT = WA_DATA-SDATA+383(4).
APPEND WA_E1EDP01 TO IT_E1EDP01.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDP01.
APPEND WA_DATA1 TO IT_DATA2.
CLEAR WA_DATA1.
ENDIF.
ELSEIF WA_DATA-SEGNAM = 'E1EDP20'.
WA_E1EDP20-WMENG = WA_DATA-SDATA+0(15).
WA_E1EDP20-AMENG = WA_DATA-SDATA+15(15).
WA_E1EDP20-EDATU = WA_DATA-SDATA+30(8).
APPEND WA_E1EDP20 TO IT_E1EDP20.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDP20.
APPEND WA_DATA1 TO IT_DATA2.
CLEAR WA_DATA1.
ENDIF.
ELSEIF WA_DATA-SEGNAM = 'E1EDPA1'.
WA_E1EDPA1-PARVW = WA_DATA-SDATA+0(3).
WA_E1EDPA1-LIFNR = WA_DATA-SDATA+20(17).
WA_E1EDPA1-NAME1 = WA_DATA-SDATA+37(35).
WA_E1EDPA1-STRAS = WA_DATA-SDATA+177(35).
WA_E1EDPA1-ORT01 = WA_DATA-SDATA+282(35).
WA_E1EDPA1-PSTLZ = WA_DATA-SDATA+326(9).
WA_E1EDPA1-LAND1 = WA_DATA-SDATA+344(3).
WA_E1EDPA1-TELF1 = WA_DATA-SDATA+442(25).
WA_E1EDPA1-TELFX = WA_DATA-SDATA+517(25).
WA_E1EDPA1-SPRAS = WA_DATA-SDATA+592(1).
WA_E1EDPA1-REGIO = WA_DATA-SDATA+655(3).
APPEND WA_E1EDPA1 TO IT_E1EDPA1.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDPA1.
APPEND WA_DATA1 TO IT_DATA2.
CLEAR WA_DATA1.
ENDIF.
ELSEIF WA_DATA-SEGNAM = 'E1EDP19'.
WA_E1EDP19-QUALF = WA_DATA-SDATA+0(3).
WA_E1EDP19-IDTNR = WA_DATA-SDATA+3(35).
WA_E1EDP19-KTEXT = WA_DATA-SDATA+38(70).
APPEND WA_E1EDP19 TO IT_E1EDP19.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDP19.
APPEND WA_DATA1 TO IT_DATA2.
CLEAR WA_DATA1.
ENDIF.
ENDIF.
ELSEIF SEG = 'E1EDS'.
IF WA_DATA-SEGNAM = 'E1EDS01'.
WA_E1EDS01-SUMID = WA_DATA-SDATA+0(3).
WA_E1EDS01-SUMME = WA_DATA-SDATA+3(18).
WA_E1EDS01-SUNIT = WA_DATA-SDATA+21(3).
APPEND WA_E1EDS01 TO IT_E1EDS01.
IF SY-SUBRC = 0.
WA_DATA1-MANDT = WA_DATA-MANDT.
WA_DATA1-DOCNUM = WA_DATA-DOCNUM.
WA_DATA1-SEGNUM = WA_DATA-SEGNUM.
WA_DATA1-SEGNAM = WA_DATA-SEGNAM.
WA_DATA1-PSGNUM = WA_DATA-PSGNUM.
WA_DATA1-HLEVEL = WA_DATA-HLEVEL.
WA_DATA1-DTINT2 = WA_DATA-DTINT2.
WA_DATA1-SDATA = WA_E1EDS01.
APPEND WA_DATA1 TO IT_DATA3.
CLEAR WA_DATA1.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
IF SY-SUBRC = 0.
LOOP AT IT_DATA2 INTO WA_DATA1.
READ TABLE IT_DATA2 INTO WA_DATA1 INDEX COUNT.
APPEND WA_DATA1 TO IT_DATA4.
APPEND LINES OF IT_DATA4 TO IT_DATA1.
COUNT = COUNT + 1.
CLEAR:WA_DATA1,IT_DATA4[],IT_DATA4.
IF COUNT = 5.
APPEND LINES OF IT_DATA3 TO IT_DATA1.
IT_DATA1-SEGNUM = SY-TABIX.
MODIFY IT_DATA1 FROM IT_DATA1 INDEX SY-TABIX TRANSPORTING SEGNUM .
PERFORM IDOCGENETRATE.
DELETE IT_DATA1 FROM 15 TO 19.
DELETE IT_DATA2 FROM 1 TO 4.
SORT IT_DATA2.
CLEAR:WA_DATA1.
count = 1.
ENDIF.
ENDLOOP.
ENDIF.
LOOP AT T_COMM_IDOC.
WRITE:/ 'IDoc Generated - ', T_COMM_IDOC-DOCNUM.
ENDLOOP.
*& Form IDOCGENETRATE
text
--> p1 text
<-- p2 text
FORM IDOCGENETRATE .
DATA: count1 type i VALUE 1.
DATA : S_CTRL_REC LIKE EDIDC. "Idoc Control Record
CONSTANTS : C_PO_SEGMENT LIKE EDIDD-SEGNAM VALUE 'PO_SEGMENT'.
CONSTANTS: C_IDOCTP LIKE EDIDC-IDOCTP VALUE 'ORDERS05'.
loop at IT_DATA1 into WA_DATA1.
it_DATA1-segnum = count1.
MODIFY IT_DATA1 FROM IT_DATA1 INDEX SY-TABIX TRANSPORTING SEGNUM .
count1 = count1 + 1.
endloop.
Selection Screen
DATA : C_MESTYP LIKE EDIDC-MESTYP VALUE 'ORDERS', "Message Type
C_RCVPRT LIKE EDIDC-RCVPRT VALUE 'LS', "Partner type of receiver
C_RCVPRN LIKE EDIDC-RCVPRN VALUE 'DTZ_801',
C_RCVPOR LIKE EDIDC-RCVPOR VALUE 'ZEDI', "'A000000226',
C_SNDPRN LIKE EDIDC-SNDPRN VALUE 'DTZ_801',
C_SNDPRT LIKE EDIDC-SNDPRT VALUE 'LS'.
S_CTRL_REC-RCVPOR = C_RCVPOR. "Receiver Port
S_CTRL_REC-MESTYP = C_MESTYP. "Message type
S_CTRL_REC-IDOCTP = C_IDOCTP. "Basic IDOC type
S_CTRL_REC-RCVPRT = C_RCVPRT. "Partner type of receiver
S_CTRL_REC-RCVPRN = C_RCVPRN. "Partner number of receiver
"Sender Partner type
S_CTRL_REC-SNDPRN = C_SNDPRN. "
S_CTRL_REC-SNDPRT = C_SNDPRT ." Sender Partner Number
" generate_control_record
CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'
EXPORTING
MASTER_IDOC_CONTROL = S_CTRL_REC
TABLES
COMMUNICATION_IDOC_CONTROL = T_COMM_IDOC
MASTER_IDOC_DATA = IT_DATA1
EXCEPTIONS
ERROR_IN_IDOC_CONTROL = 1
ERROR_WRITING_IDOC_STATUS = 2
ERROR_IN_IDOC_DATA = 3
SENDING_LOGICAL_SYSTEM_UNKNOWN = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
COMMIT WORK.
LOOP AT T_COMM_IDOC.
WRITE:/ 'IDoc Generated - ', T_COMM_IDOC-DOCNUM.
ENDLOOP.
ENDIF.
ENDFORM. " send_idoc
Similar Messages
-
How to split one page into different frames in ADF?
Hi,
Can any one please guide me how to split a jspx into different frames.
i.e., left frame contains <af:panelSideBar> which contains multiple <af:commandMenuItem> s. And whenver we click on the one <af:commandMenuItem>, it has to show the corresponing page inside center frame in this page itself. Is it possible in ADF? Which component we need to use?
Can anyone guide me on this?
Thanks in advance,
Regards,
Suresh KethireddyYou can use a combination of the ADF Faces 10.1.3 components like:
af:panelPage
af:panelSideBar
af:panelHorizontal
af:panelGroup
to organize the screen layout, but it is not the interactive splitter that the 11g product provides.
You can all all the 10.1.3 ADF Faces Components here:
http://www.oracle.com/technology/products/jdev/htdocs/partners/addins/exchange/jsf/doc/tagdoc/core/imageIndex.html -
How to split invoice/document into two venders?
Can anyone please tell me how to split invoice/document into two vendors. Like if I get an invoice for $1000 and it needs to be splitted between father and son, $500 to each. How would I set that up in SAP? I am not sure if this will be an invoice split or a document split.
Thanks
MonikaIf you are using an FI entry F-43 to generate invoice this can be done by giving the same invoice ref. in the Inv. Ref. field for two vendors. This is manual
Document Split will split the document between two profit center and not between vendors. -
Crystal report - how to split a field into more fields
Hello,
I`m new to Crystal reports and I`ve got a trouble. I have field which contains an address - street, city, zip code. The example is:
STEHLIKOVA 977 165 00 PRAHA 620 - SUCHDOL 165 00.
What I need to achieve is to split this string into three separated fields. I`ve trouhg a couple of forums but haven`t been able to find a proper answer. The problem is that the addresses differ so I can`t use an absolute defining of a start position. Looking at the DB (HEXA code) the parts in the string are divided by two dots:
STEHLIKOVA 977..165 00 PRAHA 620 - SUCHDOL..165 00
I`ve been able to work out this solution:
stringVar array x := split({cparty.STREET_ADD},"..");
Local numberVar i;
Local stringVar outputString := "";
For i:=1 to Count(x) do
outputString := outputString + x[i] + Chr(10)
outputString;
It splits the string into three rows:
STEHLIKOVA 977
165 00 PRAHA 620 - SUCHDOL
165 00
And I don`t know how to find the end of each row so to be able to separate the strings and report them as three different fields.
Would be anyone so kind and help me out with this?
Thank you.
PetrHi
Actually using a for loop is not necessary here. All you need to do is to add several formula fields: one for street, one for city and one for zipcode. In @street field you add formula:
stringVar array x := split({cparty.STREET_ADD},Chr(13));
x[1];
Then you drag such formula field to details section of your report and watch preview to check if everything looks alright. Repeat for every formula field that you'd like see in your report.
In @city you add almost identical formula but you change index, i. e. instead of x[1] you need to use x[2]. Then for @zip x[3].
You may need to check if your address has all three parts - for example if you want to use formula in the second part of your address field you may need check first if there are at least two parts after split:
stringVar array := split({cparty.STREET_ADD},Chr(13));
numbervar c;
c := count(x);
if 2 <= c then
x[c];
Var 'c' is used to store the number of elements in array after split. Then I'd like to check if the part (second) actually exists. So I try to check if number of part that I want to refer to is not bigger than the number of elements in array after split (here stored in var 'c').
Actually the code presented above is not enough since you have no guarantee that you'll always get address structured in the very same way. For example in demo PL database I have zip code and city in the same row after split with Chr(13) as delimiter.
You'll need to experiment or ask someone to prepare correctly structured data coming from B1 to your report.
Kind regards,
Radek -
How to split video files into clips
please help this noob. i have adobe master collection cs3 and i'm totally lost as to how i can take a large video file and split it into various clips... example being a 20 minute fireworks display and i want to split that movie into a few dozen clips of specific fire works events. what package do i use and how might i go about setting the various start and finish markers and then export those chosen clips.
any help would be greatly appreciated.
thanks much
michaelExporting segments out one at a time is hardly rocket surgery.
At the top of the timeline is a movable bar called the "Work Area Bar". You can set the in and out points of this bar over the area you wish to export, go to "File/Export/Movie" and make sure you have "Work Area Bar" selected rather than "Entire Sequence". Export to the same project settings you're working with. Repeat for each section. -
How to add a datatype into IDOC in production
Hi..
How to add a an extra feild (Customized IDOC) into IDOC when it is in Production..
Message was edited by:
Raghavesh Reddyyes.
if possible can i get for both the cases....
what in case if i dont change the mapping.
Message was edited by:
Raghavesh Reddy -
How to split this string into 4 sections to a max 35 characters
Hello,
Does anyone have an idea how I can acheive this please.
I have this string
Expense_Inv_8- ExpenseInv_7- Exp001- Expense_Inv_6- Expense_Inv_5- Expense_Inv_4- Expense_Inv_3- Expense_Inv_2- Expense_inv1
and I need to display them in sections seperated by ';' as explained below
Section 1 Section 2 Section 3 Section 4
Expense_Inv_8- ExpenseInv_7- Exp001;Expense_Inv_6- Expense_Inv_5;Expense_Inv_4- Expense_Inv_3;Expense_Inv_2;
need to split this string into 4 sections seperated by ';' and each section should be of no more than 35 characters, if null should end ;;;
Section 1, 35 Character ended by;
Section 2, broken off after Expense_Inv_5 because Expense_Inv_4 will take it over 35 chracters)
Section 3, should only take Expense_Inv_4- Expense_Inv_3, because adding Expense_Inv_2 will take it over 35
characters, each record in the string is seperated by '-'
Section 4, dispays the reminder of the string
regards
AdeHi,
Welcome to the forum!
Whenever you ask a question, it helps if you post a little sample data (CREATE TABLE and INSERT statements, relevant columns only) and the results you want from that data.
I think I understand the problemk well enough to attempt a solution, but if the query below isn't right, please post that information.
WITH cntr AS
SELECT LEVEL AS n
FROM dual
CONNECT BY LEVEL <= ( SELECT MAX (LENGTH (txt))
FROM table_x
, got_best_path AS
SELECT id
, txt
, MAX ( SYS_CONNECT_BY_PATH ( TO_CHAR (c.n, '99')
) AS best_path
FROM cntr c
JOIN table_x x ON c.n <= LENGTH (x.txt)
START WITH c.n = 1
CONNECT BY c.n - PRIOR c.n BETWEEN 1
AND :section_length
AND x.id = PRIOR x.id
AND SUBSTR ( x.txt
, c.n
, 1
) = '-'
AND LEVEL <= :section_cnt
GROUP BY id
, txt
, got_pos AS
SELECT id
, REPLACE ( txt
) || ';' AS txt
, best_path
, TO_NUMBER (REGEXP_SUBSTR (best_path, '[0-9]+', 1, 2)) AS pos_2
, TO_NUMBER (REGEXP_SUBSTR (best_path, '[0-9]+', 1, 3)) AS pos_3
, TO_NUMBER (REGEXP_SUBSTR (best_path, '[0-9]+', 1, 4)) AS pos_4
FROM got_best_path
SELECT id
, SUBSTR (txt, 1 , NVL ( pos_2 , :section_length)) AS section_1
, SUBSTR (txt, pos_2 + 1, NVL ((pos_3 - pos_2), :section_length)) AS section_2
, SUBSTR (txt, pos_3 + 1, NVL ((pos_4 - pos_3), :section_length)) AS section_3
, SUBSTR (txt, pos_4 + 1, :section_length ) AS section_4
FROM got_pos
;As written, this requires SQL*Plus 9 (or higher). You can have multiple versions or SQL*Plus on the same client, if you really need to keep the older version.
:section_length is the maximum length of each section (35, as you stated the problem).
:section_cnt is the number of sections. In the query above, this is 4. If you change it, you not only have to change the bind variable, but you have to change the hard-coded SELECT clauses of the main query and the last sub-query (that is, got_pos).
MODEL or PL/SQL would probably be better ways to solve this problem. -
How to split the records into two parts
Hi experts,
I have a field with 75 char length, this field have records also, Now i want to split the field into two differnt fields. That means upto first 40 char goes to one field, from 41st char to 70 char goes to another field, for that how to split record into two parts.
Plz advice this,
MohanaHi,
Do the following:
f1 = fsource(40).
f2 = fsource+40(30).
where fsource is the 70 character original string and target strings are f1 (length 40) and f2 (length 30).
Cheers,
Aditya
Edited by: Aditya Laud on Feb 22, 2008 2:10 AM -
How to split a file into two small file
Hi All,
I want to raed a file from FTP server.Then i have to split a file into two small file.File format look like this.
R01!service_order!item_guid!resource_guid!assignment_guid
R02!Service_order!product_id!product_discription!quantity
R02!Service_order!product_id!product_discription!quantity
R02!Service_order!product_id!product_discription!quantity
i want split file into 2 file,according to header and item details.one table containt header information (label R01) and second table containt (label R02).
can anybody help me for this.how can i split into 2 file.
Thanks
Vishwas SahuCreate 2 internal tables. sat it_header, it_detail
Check for 1st 3 characters and if it is R01 then send it into it_header and if it comes out to be R02 then send it to it_detail.
Once done... You can either attach these tables into mail as two seperate files
Or you can download each internal table using GUI_DOWNLOAD.
Hope this helps!!
Kanchan -
PRE9: How to split one clip into two (or more) clips?
I can't believe this is so hard to do... But HOW?
You don't necessarily need to separate the file into individual clips. When you do a cut on the timeline, this is a virtual cut, leaving the original file untouched but determining what will appear in the output. You can split the clip into multiple pieces, delete the bits you don't want, add transitions, insert new bits, whatever you want, all without affecting the original file in any way. Once you're happy, you output a new file using the Share options, and you get a new video file, with your original files still untouched.
If you want to split your file into multiple individual files, you can use the sliders on the time scale, and export (Share) using the Share Work Area Only checkbox. If you're doing this for purposes of reassembly, it would be better to save the individual clips in as lossless a format as possible, the default AVI format taking considerably more space but not losing quality. Hint: the sliders can be positioned to the time marker using Alt-[ and Alt-]. Once you've done this, note that your original file will still be there, untouched.
There is also VideoRedo Plus, a cheap program which gives frame-accurate selection and allows rapid subdivision of a piece of footage. It doesn't re-render as PE9 would (this is where loss of image quality creeps in using compressed formats such as MPEG), copying the original frames. You can then reassemble the bits using your video editor. -
How to split stereo track into 2 mono
How to split a stereo audio track into two seperate mono tracks (Left, Right).
(Have searched the manual..)
BonquiAlso, where you select mono or stereo for a track below the level meter you can click + hold and select L or R. Instead of bouncing, you can convert the files, for me this gives fewer room for error. Also disabling UTM works in some cases, but this is not ideal for every session.
J -
How to split the report into different versions view 1 agent delivery
Hello
I have a scenario where I need to send a dashboard to multiple users. The user information are stored in the table like the following:
USER Day Car Pay Type Cost Email
USER1
-10
-2
Honda
Customer Pay
500
[email protected]
USER2
-4
-1
AUDI
Customer Pay + Warranty
1000
[email protected]
USER2
-4
-1
PORSCHE
Customer Pay + Warranty
1000
[email protected]
Now I have a dashboard call Car, on this dashboard I have prompts like Date, Car, Pay Type, Cost, pretty much the same name as the columns in the above table. I have also set up session variables to pick up users based on the log in.
Now for user2, he is getting 1 email, which is the dashboard with both Audi and Porsche on there. Instead, he wants to 2 attachments, 1 for Audi and 1 more Porsche. Is there a way to achieve this using 1 agent?
Please let me know how to split the result sets based on user records in the table
Thank youHello,
Thank You very much for the useful hint.
Regards
Aloha -
How to split one request into many to reduce response time
Hi,
In a request I may get more than 20-30 materials for which, pricing info need to be returned. Its increasing the load on SAP and XI is not waiting for a long time to get the price. Please let me know a work around for this otherthan BPM.
Or is there any mechanism by which I can split the XML into multiple XMLs and process multi small requests.
Thanks
SeshuHi Seshu -
Timeouts can be tricky in synchronous cases with all the various components of XI. In your case, you've implied that the RFC receiver adapter is being used to talk to SAP and it's taking a long time for SAP to process this request and send back a response. Are you getting a '...MessageExpiredException'? If so, the parameter 'xiadapter.inbound.timeout.default' in the 'SAP XI Adapter: XI' J2EE service would be relevant (see Note 791379 for details). The 'syncMessageDeliveryTimeoutMsec' parameter of the 'SAP XI Adapter: RFC' J2EE service is only relevant if you're using the RFC sender adapter.
Other timeout settings may come into play. <a href="http://service.sap.com/~sapidb/011000358700005909032005E/XI30XI70_TroubleGuide.pdf">The XI Troubleshooting guide</a> has some good information on this.
Also, if this scenario is required to be synchronous, there's no way to split the request without using BPM as synchronous requests cannot be sent to multiple receivers.
Regards,
Jin -
How to split one monitor into two, differently configured desktops
Hello,
I have a 27" iMac. I would like to split the screen into two differently configured desktops or monitors. Apps like TwoUp or Divy don't exactly do this. I'll explain it with an example:
Suppose I'm working on a document and I need to open many folders to retrieve files. One common problem is that opened folders overlap each other and sometimes they overlap with the document I'm working on, or they go underneath the document. I would like to split the screen vertically in, say, two virtual, independent desktops/monitors, like this:
- one window/space on one side (say, on the left) of the screen would contain the document from top to bottom, with no dock bar on the bottom
- the other window/space (right) would behave as a regular, full desktop, with the entire dock on the bottom
In this way, if I need to navigate to find a file to use in the document, I would move the cursor to the right. The Finder would work only in this window/space, thus windows or other applications would never overlap or clutter the left side of the screen. Drag-and-drop from right to left should be possible.
One way to imagine it is as if the 16x9 monitor were comprised by two vertical, 8x9 independent monitors side by side, each with its own configuration.
Is this possible? Can anyone recommend an application or type of setup?
Thank you,
-celsoLooking for something like this?
You can tell Display Maid to save the positions of your open windows across many apps and later restore those positions when things become a mess. With Display Maid you don’t have to restore windows one at a time, or even one app at a time. Display Maid restores all saved window positions across all apps with one command. It will also restore window positions automatically when it detects a workspace change.
http://www.funk-isoft.com/index.php/display-maid -
How to split column wise into separate flat files in ssis
IN SSIS...
1.---->I have a sales table country wise regions like (india, usa, srilanka) ....
india usa
srilanka
a b
c
d e
f
so i want output like in
flat file1.txt has india flat file2.txt has usa flat file3.txt has srilanka
a b
c
d e
f
2.----->i dont know how many regions in my table....dynamically split into separate flat files ....
pls help me.....thank uI think what you can do is this
1. Do a query based on UNPIVOT to get the data as rows instead of columns
For that you can use a query like this
IF OBJECT_ID('temp') IS NOT NULL DROP TABLE temp
CREATE TABLE temp
Country varchar(100),
Val decimal(25,5)
DECLARE @CountryList varchar(3000),@SQL varchar(max)
SELECT @CountryList = STUFF((SELECT ',[' + Column_Name + ']' FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '<SalesTableNameHere>' FOR XML PATH('')),1,1,'')
SET @SQL= 'SELECT * FROM <SalesTableNameHere> t UNPIVOT (Val FOR Country IN (' + @CountryList + '))p'
INSERT temp
EXEC (@SQL)
Once this is done you'll get data unpivoted to table
Then you can use a execute sql task with query like above
SELECT DISTINCT Country FROM Temp
Use resultset option as full resultset and store the result to an object variable
Then add a ForEach loop container with ADO enumerator and map to the object variable created above. Have variables inside loop to get inidvidual country values out.
Inside loop place a data flow task. Use a variable to store source query , make EvaluateAsExpression true for it and set Expression as below
"SELECT Val FROM Temp WHERE Country = " + @[User::LoopVariable]
Where LoopVariable is variable created inside loop for getting iterated values
Inside data flow task place a oledb source, choose option as SQL command from variable and map to the above query variable.
Link this to flat file destination create a flat file connection manager. Set a dynamic flat file connection using expression builder. Make it based on a variable and set variable to increment based on loop iteration
The core logic looks similar to this
http://visakhm.blogspot.ae/2013/09/exporting-sqlserver-data-to-multiple.html
dynamic file naming can be seen here
http://jahaines.blogspot.ae/2009/07/ssis-dynamically-naming-destination.html
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My Wiki User Page
My MSDN Page
My Personal Blog
My Facebook Page
Maybe you are looking for
-
Svg background tile not displaying when site is published
Hi, I have a few pages with an SVG tile graphic in the background (that makes a stripe pattern). Inside the Muse Application these all preview fine when viewed with the browser page preview inside Muse. However, once I publish the site as HTML and up
-
Populating field with EXIT_SAPLEINM_002
Hi, I have a requirement where i have to populate the Vendor Name field when PARVW = 'LF'(in ME22N-Create PO Transaction). Enhancement name:-MM06E001 INCLUDE ZXM06U02 In Include LEINMF11,this is where i hv to make the changes:- int_edidd-se
-
Controlling access to display attributes that are also characteristics
In earlier versions of BI an authorization relevant characteristic (such as profit center) could be secured in navigation but could be made visible universally by creating a second authorization object for the characteristic and granting * access for
-
Imported Crystal Reports from CE10 with specified server group problem
We have Crystal Reports on a CE10 Environment where we have assigned and scheduled them to different server groups in order to throttle workload and maintain customer service levels. When importing these reports to BO XI 3.1, it appears to bring ove
-
My bridge pause all the time. I have to wait 30 seconds after selecting a picture or click the right button of the mouse. I have installed a new windows 8.1, and a fresh CD6. But still these problems in Bridge. No problems in Photoshop. What to do