Bapi or bdc to upload data in infotype 0267 through workflow
Hi All,
I have designed a workflow for infotype 0267 in which after
the final approval of the offcycle amount the record gets unlocked.
For this purpose in I had used a bdc to unlock the record.
The bdc is working fine if I test the object in SW01, but in the workflow it dosen't work the workflow remains in process.
I would like to know if at all bdc can be used in workflows, or there is an alternative to it like using BAPI.
Thanks and regards
Shraddha
Mike Pokraka wrote:>
> Hi Shradda,
>
> Unfortunately I don't know this offhand, have you tried to find it?
You can also ask in [the forum dedicated to questions about HCM (HR)|SAP ERP Human Capital Management (SAP ERP HCM); - where I am sure you'll find more expertise in this area - because you are not really struggling with a workflow problem, it's plain ABAP.
Similar Messages
-
Bapi - upload data for infotypes 0016 and 0019
hello,
Please let me know bapi to upload data for infotypes 0016 and 0019 as i am unable to find any bapi for this infotypes.
Please use a more meaningful subject in future - I've edited it for you this time.
Edited by: Matt on Nov 6, 2008 12:08 PMHi Sunny,
My suggestion is go txcode BAPI.
After this in the left side of the window complete information on BAPIs will be available search out in Human resource you may get the BAPI, in the mean while some one may help you.
Cheers!!
VEnk@ -
How to upload data in infotype 0025 (Appraisals)
I want to make an upload program for infotype 0025 (Appraisals). The program will upload the data in 'Potentials' but I cannot make a recording work in it. Each time the system posts the data into next row and recording does not work since the line number is fixed in recording. There is no + sign to add a row at the top. Can someone please tell me a way to do this or if there is a Function Module that can upload data into infotype 0025.
ThanksDear Sohaib,
This upload could not be performed by BDC recording. You will have to make use of around four Appraisal BAPI's to create an entry in Infotype 25(Appraisals). I had the same scenario of uploading appraisal data here at NBP(National Bank of Pakistan). Here is the link for the article i wrote,covering this topic in depth,along with the complete solution:
http://scn.sap.com/docs/DOC-32084
If you like this article,kindly flag it as a 'Correct Answer.
Regards,
Fahad -
Uploading data in infotype-0586 and infotype-0587
Dear Experts,
Can i use the standard bapi HR_INFOTYPE_OPERATION for uploading data into infotype-0586( sec 80c deduction) and infotype-0587 (pf related).if so what are the parameters to be passed for the upload.
Please inform if there are any other bapi for the upload process.
regards,
Aeroshil NameirakpamHi,
yes you can use...HR_INFOTYPE_OPERATION for your purpose.
in that you should pass....
INFTY - infotype number
NUMBER --pernr
SUBTYPE --subtype of infotype (if applicable)
VALIDITYEND -ENDDA
VALIDITYBEGIN -BEGDA
but before you call this FM...make sure that you lock the employee for which you are updating the record and after this FM updates the record for that employee make sure you unlock the employee...
to lock the pernr ...use FM....HR_EMPLOYEE_ENQUEUE
and to unlock...use FM... HR_EMPLOYEE_DEQUEUE
in both of these FMs you just need to passs PERNR..
summerizing this...first use...
HR_EMPLOYEE_ENQUEUE
then call...HR_INFOTYPE_OPERATION
and then...
HR_EMPLOYEE_DEQUEUE
thats it!
<b>Reward Points if answer was helpful,</b>
Regards,
Tejas -
Query on uploading data into infotype
Hi,
I am in search of a method to upload data into infotypes IT0001,HRP1001.
I have serached and found we can do it using BDC,LSMW and through Hr_INOFYTPE_OPERATION--fm.
But in my flat file am having pernr ,begda,endda and supervisor..
Some of my searches said if i had a pernr in flat file its impossible to do with HR_INFOTYPE_OPERATION.
CAN ANYONE PLS SUGGEST ME THE BEST WAY TO DO?
ThanksHi Salini
Using BDC or LSMW might lead to some inconsistencies.
Uploading of various infotype data depends upon its volume.
There is a FM: HR_MAINTAIN_MASTERDATA through which you can upload the data. But this does for one record at a time. So the performance gets affected at times. Before calling this FM each time, clear the buffer using the FM: 'HR_PSBUFFER_INITIALIZE'. This will be of great help.
Incase you want to upload all your data at once, you can use BAPI_HRMASTER_SAVE_REPL_MULT.
Let me know incase you need any help in any of these.
Regards
Harsh -
Error while uploading data in table t_499s through BDC Prog
Hi
am facing problem while uploading data in table t_499s through BDC Program , if there is more than 15 records in file its not allowing to upload kindly suggest what to do
Thanx
Mukesh sHi,
See if you want to update only single table, which has User maintenance allowed
Use Modify statement.
EX:
LOOP AT ITAB INTO WA_TAB.
MOVE-CORRESPONDING WA_TAB TO T499S.
MODIFY T499S.
CLEAR T499S.
ENDLOOP.
It will update the table, to check go to sm30 , and check in V_T499S.
Rgds
Aeda -
How to upload datas in excel sheet through BDC
Hi,
I know how to upload datas in Text format through BDC...Suppose even when datas are in .xls format,I saved that file as Text(tab delimited) format...then file become text format and it can be easily uploaded....
So, I want to know How to upload datas in excel sheet through BDChi,
try this Example, hope useful to u, assign me point.
report ZMSV1_BDC_CALL
no standard page heading line-size 255.
*include bdcrecx1.
*parameters: dataset(132) lower case.
DO NOT CHANGE - the generated data section - DO NOT CHANGE ***
If it is nessesary to change the data section use the rules:
1.) Each definition of a field exists of two lines
2.) The first line shows exactly the comment
'* data element: ' followed with the data element
which describes the field.
If you don't have a data element use the
comment without a data element name
3.) The second line shows the fieldname of the
structure, the fieldname must consist of
a fieldname and optional the character '_' and
three numbers and the field length in brackets
4.) Each field must be type C.
Generated data section with specific formatting - DO NOT CHANGE ***
data: begin of record,
data element: BUKRS
BUKRS_001(004),
data element: KTOKK
KTOKK_002(004),
data element: NAME1_GP
NAME1_003(035),
data element: SORTL
SORTL_004(010),
data element: ORT01_GP
ORT01_005(035),
data element: LAND1_GP
LAND1_006(003),
data element: SPRAS
SPRAS_007(002),
data element: BANKS
BANKS_01_008(003),
data element: BANKK
BANKL_01_009(015),
data element: BANKN
BANKN_01_010(018),
end of record.
End generated data section ***
data: itab like record occurs 0 .
data: it_bdc type bdcdata occurs 0 with header line.
data: it_msg type bdcmsgcoll occurs 0 with header line.
parameter p_file type rlgrap-filename default 'c:\vendor.txt' obligatory
start-of-selection.
perform open_dataset using p_file.
perform open_group.
*perform close_group.
*perform close_dataset using dataset.
*& Form open_dataset
text
-->P_P_FILE text
form open_dataset using p_p_file.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
CODEPAGE = ' '
FILENAME = p_file
FILETYPE = 'DAT'
HEADLEN = ' '
LINE_EXIT = ' '
TRUNCLEN = ' '
USER_FORM = ' '
USER_PROG = ' '
DAT_D_FORMAT = ' '
IMPORTING
FILELENGTH =
TABLES
data_tab = itab
EXCEPTIONS
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
endform. " open_dataset
*& Form open_group
text
--> p1 text
<-- p2 text
form open_group .
loop at itab into record.
perform bdc_dynpro using 'SAPMF02K' '0105'.
perform bdc_field using 'BDC_CURSOR'
'RF02K-KTOKK'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RF02K-BUKRS'
record-BUKRS_001.
perform bdc_field using 'RF02K-KTOKK'
record-KTOKK_002.
perform bdc_dynpro using 'SAPMF02K' '0110'.
perform bdc_field using 'BDC_CURSOR'
'LFA1-ORT01'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFA1-NAME1'
record-NAME1_003.
perform bdc_field using 'LFA1-SORTL'
record-SORTL_004.
perform bdc_field using 'LFA1-ORT01'
record-ORT01_005.
perform bdc_field using 'LFA1-LAND1'
record-LAND1_006.
perform bdc_field using 'LFA1-SPRAS'
record-SPRAS_007.
perform bdc_dynpro using 'SAPMF02K' '0120'.
perform bdc_field using 'BDC_CURSOR'
'LFA1-KUNNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0130'.
perform bdc_field using 'BDC_CURSOR'
'LFBK-KOINH(01)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'LFBK-BANKS(01)'
record-BANKS_01_008.
perform bdc_field using 'LFBK-BANKL(01)'
record-BANKL_01_009.
perform bdc_field using 'LFBK-BANKN(01)'
record-BANKN_01_010.
perform bdc_dynpro using 'SAPMF02K' '0130'.
perform bdc_field using 'BDC_CURSOR'
'LFBK-BANKS(01)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_dynpro using 'SAPMF02K' '0210'.
perform bdc_field using 'BDC_CURSOR'
'LFB1-AKONT'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0215'.
perform bdc_field using 'BDC_CURSOR'
'LFB1-ZTERM'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0220'.
perform bdc_field using 'BDC_CURSOR'
'LFB5-MAHNA'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
call transaction 'FK01' using it_bdc mode 'A' update 'S'
messages into it_msg.
write:/ sy-subrc.
perform message_formatwrite.
refresh it_bdc.
clear it_bdc.
endloop.
endform. " open_group
*& Form message_formatwrite
text
--> p1 text
<-- p2 text
form message_formatwrite .
data:l_msg(10).
loop at it_msg.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
ID = SY-MSGID
LANG = sy-langu
NO = SY-MSGNO
V1 = SY-MSGV1
V2 = SY-MSGV2
V3 = SY-MSGV3
V4 = SY-MSGV4
IMPORTING
MSG = l_msg
EXCEPTIONS
NOT_FOUND = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
endloop.
endform. " message_formatwrite
*& Form bdc_dynpro
text
-->P_0112 text
-->P_0113 text
form bdc_dynpro using value(p_0112)
value(p_0113).
it_bdc-program = p_0112.
it_bdc-dynpro = p_0113.
it_bdc-dynbegin = 'X'.
append it_bdc.
clear it_bdc.
endform. " bdc_dynpro
*& Form bdc_field
text
-->P_0117 text
-->P_0118 text
form bdc_field using value(p_0117)
value(p_0118).
it_bdc-fnam = p_0117.
it_bdc-fval = p_0118.
append it_bdc.
clear it_bdc.
endform. " bdc_field
Regards
fareedas -
Upload data in excel sheet through BDC
Dear all,
How do we upload data in excel sheet through BDC?
Thanks in advance.
Regards,
Sandra.Hi,
The sample code is as given below:
REPORT upload_supply_area.
*include for dispaying icons in error log
INCLUDE <icon>.
*Declaration of structure.
TYPES:BEGIN OF x_struct,
werks TYPE v_pvbe-werks, "Plant
prvbe TYPE v_pvbe-prvbe, "Supply Area
pvbtx TYPE v_pvbe-pvbtx, "Production supply area description
lgort TYPE v_pvbe-lgort, "Storage Location
rgver TYPE v_pvbe-rgver, "Person responsible for one or more supply areas
END OF x_struct.
TYPES:BEGIN OF x_messages,
msgtyp(1) type c,
werks TYPE v_pvbe-werks, "Plant
prvbe TYPE v_pvbe-prvbe, "Supply Area
message(120) type c,
END OF x_messages.
DATA: it_messages TYPE STANDARD TABLE OF x_messages .
DATA: wa_messages TYPE x_messages.
DATA:it_msgtab TYPE STANDARD TABLE OF bdcmsgcoll,
wa_msgtab TYPE bdcmsgcoll.
*internal table for BDC
DATA: it_bdcdata TYPE STANDARD TABLE OF bdcdata.
DATA: wa_bdcdata TYPE bdcdata.
DATA:it_file TYPE STANDARD TABLE OF x_struct. "internal table which has same structure as file
DATA:wa_file TYPE x_struct. "work area which has same structure as file
DATA: it_excel TYPE STANDARD TABLE OF alsmex_tabline,
wa_excel TYPE alsmex_tabline.
DATA: x_ctuprms TYPE ctu_params.
DATA:nodata TYPE c VALUE '/'.
data:con(50) type c.
data:con1(50) type c.
*selection screen
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
*Enter file name on presentation server
PARAMETERS: p_file TYPE rlgrap-filename OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
*Function which enables the user to browse the files on hard disk
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
program_name = syst-repid
static = 'X'
CHANGING
file_name = p_file
EXCEPTIONS
mask_too_long = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
START-OF-SELECTION.
*Subroutine to upload excel file and read it
PERFORM upload.
*Subroutine to upload supply area data
PERFORM fill.
*& Form bdc_dynpro
Fill the BDC table
FORM bdc_dynpro USING program dynpro. "#EC *
CLEAR wa_bdcdata.
wa_bdcdata-program = program.
wa_bdcdata-dynpro = dynpro.
wa_bdcdata-dynbegin = 'X'.
APPEND wa_bdcdata TO it_bdcdata.
ENDFORM. "BDC_DYNPRO
*& Form bdc_field
Fill the BDC table
FORM bdc_field USING fnam fval. "#EC *
IF fval <> nodata.
CLEAR wa_bdcdata.
wa_bdcdata-fnam = fnam.
wa_bdcdata-fval = fval.
APPEND wa_bdcdata TO it_bdcdata. "#EC
ENDIF.
ENDFORM. "BDC_FIELD
*& Form collect_messages
Collect the messages from transaction
FORM collect_messages . "#EC *
DATA: w_msg(100).
LOOP AT it_msgtab INTO wa_msgtab.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
id = wa_msgtab-msgid
lang = wa_msgtab-msgspra
no = wa_msgtab-msgnr
v1 = wa_msgtab-msgv1
v2 = wa_msgtab-msgv2
IMPORTING
msg = w_msg
EXCEPTIONS
not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CONDENSE w_msg.
CLEAR wa_messages.
wa_messages-msgtyp = wa_msgtab-msgtyp.
wa_messages-message = w_msg.
wa_messages-werks = wa_file-werks.
wa_messages-prvbe = wa_file-prvbe.
if wa_messages-message eq 'Formatting error in the field V_PVBE-RGVER; see next message'.
wa_messages-message = 'Invalid name of the person responsible'.
endif.
if wa_messages-message eq 'Formatting error in the field V_PVBE-LGORT; see next message'.
wa_messages-message = 'Enter the storage location'.
endif.
APPEND wa_messages TO it_messages .
ENDLOOP.
REFRESH it_msgtab.
ENDFORM. "collect_messages
*& Form write_messages
Display the messages
FORM write_messages .
DELETE ADJACENT DUPLICATES FROM it_messages COMPARING werks prvbe.
LOOP AT it_messages INTO wa_messages .
WRITE:/1 sy-vline.
IF wa_messages-msgtyp = 'S'.
WRITE: 10 icon_green_light.
ELSEIF wa_messages-msgtyp = 'E'.
WRITE: 10 icon_red_light.
ELSEIF wa_messages-msgtyp = 'W'.
WRITE: 10 icon_yellow_light.
ENDIF.
WRITE: 20 sy-vline.
WRITE : 30 'Plant-', wa_messages-werks . "#EC NOTEXT
WRITE: 48 sy-vline.
WRITE : 49 'Supply Area-', wa_messages-prvbe . "#EC NOTEXT
WRITE: 79 sy-vline.
WRITE : 80 wa_messages-message .
WRITE: 180 sy-vline.
WRITE:/1 sy-vline.
ULINE 1(180).
ENDLOOP.
ENDFORM. " write_m
*& Form fill_params
Processing mode for the transaction
FORM fill_params .
x_ctuprms-dismode = 'N'.
x_ctuprms-updmode = 'A'.
x_ctuprms-defsize = 'X'.
ENDFORM. "fill_params
*& Form upload
Upload the excel file and read the data
FORM upload .
*Function to upload excel file
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = p_file
i_begin_col = 1
i_begin_row = 2
i_end_col = 5
i_end_row = 9999
TABLES
intern = it_excel
EXCEPTIONS
inconsistent_parameters = 1
upload_ole = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CLEAR wa_file.
*Read the file row-wise
LOOP AT it_excel INTO wa_excel.
CASE wa_excel-col .
*Read plant
WHEN '1'.
wa_file-werks = wa_excel-value.
*Read supply area
WHEN '2'.
wa_file-prvbe = wa_excel-value.
*Read decription
WHEN '3'.
wa_file-pvbtx = wa_excel-value.
*Read storage location
WHEN '4'.
wa_file-lgort = wa_excel-value.
*Read Person responsible
WHEN '5'.
IF STRLEN( wa_excel-value ) = 1.
CONCATENATE '00' wa_excel-value INTO con.
wa_file-rgver = con.
ELSEIF STRLEN( wa_excel-value ) = 2.
CONCATENATE '0' wa_excel-value INTO con1.
wa_file-rgver = con1.
ELSE.
wa_file-rgver = wa_excel-value.
ENDIF.
ENDCASE.
AT END OF row.
CONDENSE:wa_file-werks,wa_file-prvbe,wa_file-pvbtx,wa_file-lgort,wa_file-rgver.
APPEND wa_file TO it_file.
CLEAR wa_file.
ENDAT .
ENDLOOP.
ENDFORM. " upload
*& Form fill
Call the transaction 'PK05'
FORM fill .
*Upload the data through transaction 'PK05'
PERFORM fill_params.
LOOP AT it_file INTO wa_file.
PERFORM bdc_dynpro USING 'SAPLSVIX' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'D0100_FIELD_TAB-LOWER_LIMIT(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=OKAY'.
PERFORM bdc_dynpro USING 'SAPL0PK1' '0020'.
PERFORM bdc_field USING 'BDC_CURSOR'
'V_PVBE-PVBTX(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=NEWL'.
PERFORM bdc_dynpro USING 'SAPL0PK1' '0021'.
PERFORM bdc_field USING 'BDC_CURSOR'
'V_PVBE-RGVER'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'V_PVBE-WERKS'
wa_file-werks.
PERFORM bdc_field USING 'V_PVBE-PRVBE'
wa_file-prvbe.
PERFORM bdc_field USING 'V_PVBE-PVBTX'
wa_file-pvbtx.
PERFORM bdc_field USING 'V_PVBE-LGORT'
wa_file-lgort.
PERFORM bdc_field USING 'V_PVBE-RGVER'
wa_file-rgver.
PERFORM bdc_dynpro USING 'SAPL0PK1' '0021'.
PERFORM bdc_field USING 'BDC_CURSOR'
'V_PVBE-WERKS'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=SAVE'.
PERFORM bdc_field USING 'V_PVBE-WERKS'
wa_file-werks.
PERFORM bdc_field USING 'V_PVBE-PRVBE'
wa_file-prvbe.
PERFORM bdc_field USING 'V_PVBE-PVBTX'
wa_file-pvbtx.
PERFORM bdc_field USING 'V_PVBE-LGORT'
wa_file-lgort.
PERFORM bdc_field USING 'V_PVBE-RGVER'
wa_file-rgver.
CALL TRANSACTION 'PK05'
USING it_bdcdata
OPTIONS FROM x_ctuprms
MESSAGES INTO it_msgtab.
REFRESH it_bdcdata.
PERFORM collect_messages.
CLEAR wa_file.
ENDLOOP.
PERFORM write_messages.
ENDFORM. " fill -
Uploading data in infotype 0024
Hi all,
I want to upload datain infotype 0024 - qualifications tab. Now the issue here is that this infotype contains a table control in which the data is not getting stored in infotype 0024 but some place else instead.
Please suggest how to tackel the situation using bdc.
Thanks
RibhuOfcourse i need more information - please read this:
Well please go to pa30 and try to create a record in Infotype 0024.
There in the qualifications tab, you cant enter anything - u have to click on the create button below the table control to choose languages - various check boxes for languages.
Now when I do recording - this step of choosing the languages do not comes up . moreover the fields in the tabstrip for qualification - they are not in the pa0024 table and are stored somewhere else. So even if i use hr_infotype_operation, it do not shows up the fields for qualifiactions tab - like language, profecincey level and dates for various languages.
Please suggest if you know something.
Infotype no 0045 is also a similar infotype where the data gets stored at some other place ..... I mean by any chance if u know how to upload data in IT0045, it would be a great help.
thanks
Ribhu -
Problem while uploading data in infotype 2
Hi All,
I made BDC to upload required fields in infotype 2. I use text file to upload all the data.
Currently i have only one record in text file for testing purpose. When i run the report in foreground for that record it goes to the pa30 screen which i have accessed recently. It means if i access pa30 for emp. code 123 then my bdc update the records for emp. code 123 and if i access emp. code 456 after that through pa30 then my program is updating records for emp. code 456. Can you please tell me why it is happening.
Thanks.Hi,
In PA30, the field for PERNR on screen, gets default value as per last used PERNR.
So, in BDC, we should make sure that the screen field is populated by our value from the file. Just check your bdc code, and make sure the field
RP50G-PERNR
gets the value from the file.
Regards,
Amit Mittal. -
Hi,
This is my BDC Program to upload batch data into infotype 0006 ans subtype 0001 plz check the code and correct i am getting one error when i compile the error is:
Description ROW Type
Program ZBDCPA30 19 Red light
Statement is not accessible.
My Code is:
report ZBDCPA30 no standard page heading line-size 255.
include bdcrecx1.
*start
data:begin of i_table occurs 0,
pernr like pernr-pernr,
begda like p0006-begda,
name2 like p0006-name2,
stras like p0006-stras,
hsnmr like p0006-hsnmr,
posta like p0006-posta,
locat like p0006-locat,
ort01 like p0006-ort01,
ort02 like p0006-ort02,
busrt like p0006-busrt,
end of i_table.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'C/:data.txt'
FILETYPE = 'DAT'
HAS_FIELD_SEPARATOR = ' '
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
IMPORTING
FILELENGTH =
HEADER =
TABLES
DATA_TAB = i_table
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*end
start-of-selection.
loop at i_table.
perform open_group.
perform bdc_dynpro using 'SAPMP50A' '1000'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RP50G-PERNR'
i_table-pernr.
perform bdc_field using 'RP50G-TIMR6'
'X'.
perform bdc_field using 'BDC_CURSOR'
'RP50G-SUBTY'.
perform bdc_field using 'RP50G-CHOIC'
'Addresses'.
perform bdc_field using 'RP50G-SUBTY'
'2'.
perform bdc_dynpro using 'SAPMP50A' '1000'.
perform bdc_field using 'BDC_CURSOR'
'RP50G-PERNR'.
perform bdc_field using 'BDC_OKCODE'
'=INS'.
perform bdc_field using 'RP50G-PERNR'
i_table-pernr.
perform bdc_field using 'RP50G-TIMR6'
'X'.
perform bdc_field using 'RP50G-CHOIC'
'Addresses'.
perform bdc_field using 'RP50G-SUBTY'
'2'.
perform bdc_dynpro using 'MP000600' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0006-BUSRT'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0006-BEGDA'
i_table-begda.
perform bdc_field using 'P0006-ENDDA'
'31.12.9999'.
perform bdc_field using 'P0006-NAME2'
i_table-name2.
perform bdc_field using 'P0006-STRAS'
i_table-stras.
perform bdc_field using 'P0006-HSNMR'
i_table-hsnmr.
perform bdc_field using 'P0006-POSTA'
i_table-posta.
perform bdc_field using 'P0006-LOCAT'
i_table-locat.
perform bdc_field using 'P0006-ORT01'
i_table-ort01.
perform bdc_field using 'P0006-ORT02'
i_table-ort02.
perform bdc_field using 'P0006-LAND1'
'IN'.
perform bdc_field using 'P0006-BUSRT'
i_table-busrt.
perform bdc_transaction using 'PA30'.
perform close_group.
endloop.
Plz tell me where i did the mistake ?
bye
kumarHi Kumar,
to my experience you need to have the START-OF-SELECTION before you do <b>any</b> action in the report.
Please put the START-OF-SELECTION before the upload function.
BR
Michael -
Uploading data from excel sheets through BDC's into sap system
hi guys,
can you please help me with this. As we use gui_upload to upload data from flat file to sap system, which function module you use to upload data from Excel sheet to sap system through bdc'shello pavan,
welcome to SDN
check the below program
REPORT ZEXCEL_TO_INTERNAL .
data: begin of itab occurs 0,
name(20) type c,
addre(20) type c,
end of itab.
DATA : ITAB1 LIKE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.
DATA : B1 TYPE I VALUE 1,
C1 TYPE I VALUE 1,
B2 TYPE I VALUE 100,
C2 TYPE I VALUE 9999.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
FILENAME =
'C:\Documents and Settings\administrator\Desktop\ppcon001bd_24.xls'
I_BEGIN_COL = B1
I_BEGIN_ROW = C1
I_END_COL = B2
I_END_ROW = C2
TABLES
INTERN = itab1
EXCEPTIONS
INCONSISTENT_PARAMETERS = 1
UPLOAD_OLE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
loop at itab1.
write:/ itab1.
Endlop.
Regards,
Naveen -
BDC to upload data into FF67 Tables
Hi,
I like to upload data into FF67 Tables to process manual Bank Reconciliation.
I wanted to know to upload data into FF67 Tables what are the related table.fields I have to consider. (fields name and table names)
My inputs are -- Posting Date, Assignment, Business Area, Profit Center, Amount, Tran key, Value Date, Bank Account, G/L Account, Co. Code, Currency
Regards
RahkesHi Divraj,
As this is a regular posting like tranasction, I have to create BDC for this data posting.
For this I like to know the table.fields that I need to update for FF67 Posting.
If you can let me know the impacted table.fiedls for TCode: FF67 update then it will help me for creating BDC.
Thanks & Regards
Rahkes -
BDC for Uploading data from XL sheet with unknown order of fields
Hi SAP Gurus,
My requirement is as follows,
A BDC is to be developed for uploading data from an XL sheet, but the problem here is , the order of fileds in the sheet can be changed .
ie, for example the fields in the XL sheet are :-
matnr maktx menge amount
but the user can give as
matnr amount menge maktx
or
maktx matnr amount menge
how i can solve this problem.
Thanks and Regards,
pavan.Hi Pavan,
You need to handle it by your self, you can create a dynamic table based on the file value.
The field name pass from file with the record as a header, and based on the header name create your dynamic table.
afterward you can pass your value to BDC.
for creating dynamic table you can use this method
call method cl_alv_table_create=>create_dynamic_table
exporting
i_style_table =
it_fieldcatalog = it_field[]
i_length_in_byte =
importing
ep_table = dyn_tab
e_style_fname =
exceptions
generate_subpool_dir_full = 1
others = 2
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
-Dhirendra -
Short dump while changing the end date of infotype 0167 through PA30
Hi all,
I am getting short dump while changing the end date of infotype 0167(Health Plans) through Tcode PA30.
dump descript is as below
An exception occurred that was not caught.
Runtime Errors UNCAUGHT_EXCEPTION
Except. CX_HRPA_VIOLATED_POSTCOND
Date and Time 11.03.2010 07:06:26
What happened?
The exception 'CX_HRPA_VIOLATED_POSTCONDITION' was raised, but it was not
caught anywhere along
the call hierarchy.
Since exceptions represent error situations and this error was not
adequately responded to, the running ABAP program
'CL_HRPA_SAPUP50R_ADAPTER======CP' has to be
terminated.
thanks
shahidSearch OSS Notes for that.
Maybe you are looking for
-
I have a 20 inch Imac Intel. I have had the logic board and airport card replaced. Every day before and after the repairs my computer will reboot on its own. Steps I have taken so far: 1. PRAM resets 2. Testing Via TechTool (Came back fine) 3. Delete
-
Degugging Inbound and Outbound idocs
Hi friends, Can any one help me in debugging Inbound and outbound IDocs? 1.I found the inbound FM using Tcode we19,clicked the inbound FM button and called it in the debugging mode. While debugging the Inbound FM iam nt able to figure out the actua
-
Why I cannot change font and Color in JFrame title??
Dear sir: I try to change font and Color in JFrame title in code below, It display all html code, not expected formatted ones. but fail. Looks like no way to do it?? Can somebody help?? Thanks import java.awt.BorderLayout; import java.awt.Toolkit; im
-
Outline Stroke – normal behaviour?
Here's a strange anomaly I bumped into. I drew a single open path with its ends crossing (see black line on the shot below). When I outline the stroke everything runs into one instead of overlapping (see red shape). Separate paths produce overlapping
-
10.4.6 update breaks GPGMail
Just a heads up, if you install the 10.4.6 update and use GPGMail, Mail.app will crash when you select an encrypted message. I guess GPGMail will have to updated for 10.4.6.