COBL-PRCTR in transaction VL01N
Hi Friends,
In Vl01N transaction (delivery note creation) we want to make the screen field COBL-PRCTR as input field in an editable mode. Currently this field and all the other filed of COBL are in display mode.
Business needs this because of the below scenario:
There is a common finished product being produced in three different production lines. All these three production lines are to be treated as three different profit centers.
Therefore at the time of creating delivery note and shipping the goods the logistics will identify and input the profit center. The profit center field in delivery note creation is not editable. We need this field to be in editable mode as to record the proper profit center in delivery note and further which will be fetched in billing for revenue recording.
We tried BAdi LE_SHP_DELIVERY_PROC but this did not work out. Its allowing changes only to the fields belonging to delivery table, non-delivery data cannot be done with this.
Could any one please help on how to achieve this.
Regards
Hi
Can you please let mw know if you were able to change the profit center filed as editable.
Thanks
SC
Similar Messages
-
Hello people!
Anyone have an example of using BAPI for the transaction VL01N, Outbound delivery?
Thanks in advance,
Denis NakamotoHow about any of these?
BAPI_OUTB_DELIVERY_CONFIRM_DEC BAPI for Outbound Delivery Verification from a Decentralized System
BAPI_OUTB_DELIVERY_SAVEREPLICA BAPI Function Module for Replication of Outbound Deliveries
BAPI_OUTB_DELIVERY_SPLIT_DEC BAPI for Subsequent Outbound-Delivery Split from a Decentralized Syste
Create Delivery from Delivery Due List
BAPI_DELIVERYPROCESSING_EXEC Delivery Processing: Deliver Preceding Document, Expand Delivery
Regards,
Rich Heilman -
Triggering outbound idoc from the transaction VL01N
Hi,
I have requirement where in which i need to create outbound idoc of sales and delivery data as soon as VL01n transaction is saved,Pls let me know how we can achived this , the Idoc needs to be triggered immediatly after saving VL01n transaction.
Thanks
Ravi>
Sujatha Reddy wrote:
> Hi Ravi,
>
> Goto t-code NACE, select Shipping and press push button 'Output Types', now you will get the output type for delivery and you can configure you own output meduim in this screen.
> select the meduim & assign the require parameters.
>
> and goto VL01N and create a delivery and now you can goto extrats-> delivery out put-> header, here you can assign the output type that has been confugured perviously.
>
> -hope this helps
You could of instead told them to search the forum like I did. Instead you chose to give him the answer, even though it is not the full answer. After they have done what you ask, what result would you expect form the output record on the delivery. I will tell you, it will not process, why, because you have not mentioned anything about partner profiles and the output control.
But I hope you get the points for you reponse and you sleep well. -
Userexits for transaction VL01N/VL02N .
I need to update LIKP-VSART after VL01N/VL02N has been completed(When save button clicked).
Depending upon Sales Order type likp-vsart field is to be updated.
I am using "FORM USEREXIT_SAVE_DOCUMENT". but its not updating this field.
Is there any userexit which can be used for this.Hi Lokesh,
find below the user exists for VL01N/VL02N
Transaction Code - VL01N Create Outbound Dlv. with Order Ref.
Exit Name Description
V02V0001 Sales area determination for stock transport order
V02V0002 User exit for storage location determination
V02V0003 User exit for gate + matl staging area determination (headr)
V02V0004 User Exit for Staging Area Determination (Item)
V50PSTAT Delivery: Item Status Calculation
V50Q0001 Delivery Monitor: User Exits for Filling Display Fields
V50R0001 Collective processing for delivery creation
V50R0002 Collective processing for delivery creation
V50R0004 Calculation of Stock for POs for Shipping Due Date List
V50S0001 User Exits for Delivery Processing
V53C0001 Rough workload calculation in time per item
V53C0002 W&S: RWE enhancement - shipping material type/time slot
V53W0001 User exits for creating picking waves
VMDE0001 Shipping Interface: Error Handling - Inbound IDoc
VMDE0002 Shipping Interface: Message PICKSD (Picking, Outbound)
VMDE0003 Shipping Interface: Message SDPICK (Picking, Inbound)
VMDE0004 Shipping Interface: Message SDPACK (Packing, Inbound)
Transaction Code - VL02N Change Outbound Delivery
Exit Name Description
V02V0001 Sales area determination for stock transport order
V02V0002 User exit for storage location determination
V02V0003 User exit for gate + matl staging area determination (headr)
V02V0004 User Exit for Staging Area Determination (Item)
V50PSTAT Delivery: Item Status Calculation
V50Q0001 Delivery Monitor: User Exits for Filling Display Fields
V50R0001 Collective processing for delivery creation
V50R0002 Collective processing for delivery creation
V50R0004 Calculation of Stock for POs for Shipping Due Date List
V50S0001 User Exits for Delivery Processing
V53C0001 Rough workload calculation in time per item
V53C0002 W&S: RWE enhancement - shipping material type/time slot
V53W0001 User exits for creating picking waves
VMDE0001 Shipping Interface: Error Handling - Inbound IDoc
VMDE0002 Shipping Interface: Message PICKSD (Picking, Outbound)
VMDE0003 Shipping Interface: Message SDPICK (Picking, Inbound)
VMDE0004 Shipping Interface: Message SDPACK (Packing, Inbound)
Regards,
Prabhudas -
Problem with Program RMCX0013 while executing transaction : VL01N
Hi All,
We have a problem while creating a delivery and also while Posting the Goods issue. A dump occurs while creation of delivery. The delivery gets created but it creates a dump.
PFA the dump details:
<b>Runtime Error PERFORM_PARAMETER_MISSING
Except. CX_SY_DYN_CALL_PARAM_MISSING
Date and Time 25.06.2007 15:51:26
ShrtText
Missing parameter with PERFORM.
What happened?
A routine call specifies fewer parameters than the number
given when defining the routine.
Error in ABAP application program.
The current ABAP program "SAPLMCS5" had to be terminated because one of the statements could not be executed.
This is probably due to an error in the ABAP program.</b>
The problem is the Subroutine F0002_UPDATE in the program RMCX0013 requires 13 input whereas only 9 inputs are passed.Please find the details from the dump.
But the program RMCX0013 seems to be a standard program and the version comparision shows some change between this system and another system.
Any inputs regarding this dump would be helpful.Thanks in advance.
Regards,
RajHi,
check the note 99507.
with regards,
Vamsi -
Update Terminated on transaction VL01N - VERKBELEG_WRITE_DOCUMENT
Hello gurus,
I'm trying to create a delivery based on a sales order.
When I save the document system says that outbound delivery was created, however after that a pop-up appears saying "Update Terminated" with error info "Error Info... DUPREC:POS&VERKBELEG&0000126659"
If I go to SM13 to check the log system display error on function module VERKBELEG_WRITE_DOCUMENT.
And no delivery document is created.
Do you have an ideia how to solve this?
Thanks and Regards,Hi,
Refer to note:
[Note 208010 - Update termination in VERKBELEG_WRITE_DOCUMENT|https://service.sap.com/sap/support/notes/208010]
Also check your delivery document number range.
Cheers -
Reg:Copying the Delivered qty to picked qty in delivery(vl01n) transaction
Hi Experts,
While creating the delivery i need a user exits to copy the delivery qty to picked qty .
so that when the user enters in the transaction vl01n the delivery qty and picked qty will be
same and if any changes in picked qty he will change manually.
Regards,
Vikramhi,
these r the total exits for vl01n and i don;t find any exit for this requirement.
Exit Name Description
V02V0001 Sales area determination for stock transport order
V02V0002 User exit for storage location determination
V02V0003 User exit for gate + matl staging area determination (headr)
V02V0004 User Exit for Staging Area Determination (Item)
V50PSTAT Delivery: Item Status Calculation
V50Q0001 Delivery Monitor: User Exits for Filling Display Fields
V50R0001 Collective processing for delivery creation
V50R0002 Collective processing for delivery creation
V50R0004 Calculation of Stock for POs for Shipping Due Date List
V50S0001 User Exits for Delivery Processing
V53C0001 Rough workload calculation in time per item
V53C0002 W&S: RWE enhancement - shipping material type/time slot
V53W0001 User exits for creating picking waves
VMDE0001 Shipping Interface: Error Handling - Inbound IDoc
VMDE0002 Shipping Interface: Message PICKSD (Picking, Outbound)
VMDE0003 Shipping Interface: Message SDPICK (Picking, Inbound)
VMDE0004 Shipping Interface: Message SDPACK (Packing, Inbound) -
Adding Data to the database for SAP Transactions
Hi
I'm new to the whole ABAP. I would like to enquire about adding transaction data in SAP through ABAP but it must be immediate.
I know that one can use a BAPI to add data and can rollback if any problems occur.
But if no BAPI exists how does one write code to add a document to the SAP database but with everything SAP transaction requires like the BAPI. What is the process and how???
So let say I wanted to do FB01 which is SAP FI document and must be immediate. There is a BAPI that exists for it but if there was not one how would I do this???
I know one can also use BDC but that creates a batch and then needs to be executed in SM35, I want a way to add data for two or three SAP transactions, if any problems occur with any of the steps rollback everything else commit everything to the database.
Any simple detail examples (code) that satisfy the above will be greatly appreciated and REWARDED.
Thanks in advanceLuis,
i have a code exactly same BDC for FB01.
refer:
REPORT z_etching_fb01
NO STANDARD PAGE HEADING LINE-SIZE 255.
*etching invoice load
INCLUDE bdcrecx1.
TYPE-POOLS: truxs , slis.
*PARAMETERS: dataset(132) LOWER CASE DEFAULT
* 'c:\temp\etchingload.txt'.
PARAMETER: pfile LIKE rlgrap-filename." OBLIGATORY.
SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-001.
PARAMETER: p_kunnr LIKE kna1-kunnr OBLIGATORY, "kna1-kunnr
p_bukrs LIKE bseg-bukrs,
p_mwskz LIKE t007a-mwskz OBLIGATORY,"t007a-mwskz
p_prctr LIKE cepc-prctr OBLIGATORY,"cepc-prctr
* p_newko LIKE ska1-saknr OBLIGATORY DEFAULT 41000000,"
p_budat LIKE bkpf-budat OBLIGATORY ,
p_hkont LIKE bseg-hkont OBLIGATORY DEFAULT 41000000 ,
p_waers TYPE waers OBLIGATORY DEFAULT 'GBP'."tcurr-waers
SELECTION-SCREEN END OF BLOCK a.
SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE text-002.
PARAMETER : report AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF BLOCK b.
*** 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 ***
* ALV *
DATA: it_fieldcat TYPE slis_t_fieldcat_alv,
wa_fieldcat LIKE LINE OF it_fieldcat,
it_top_of_page TYPE slis_t_listheader,
ls_layout TYPE slis_layout_alv,
gt_events TYPE slis_t_event.
DATA: it_raw TYPE truxs_t_text_data.
DATA: BEGIN OF record,
* data element: BLDAT
bldat_001(010), "Invoice Date
* data element: BLART
blart_002(002), " Doc Type DR or DG if credit
* data element: BUKRS
bukrs_003(004), " Company Code
* data element: BUDAT
budat_004(010), "Posting Date
* data element: MONAT
monat_005(002), "period"
* data element: WAERS
waers_006(005), "Currency
* data element: XBLNR1
xblnr_007(016), "Invoice Number
* data element: BKTXT
bktxt_008(025), "PO number
* data element: SAEOBJART
docid_009(010),
* data element: NEWBS
newbs_010(002), "posting Key
* data element: NEWKO
newko_011(017), "Customer number or GL account
* data element: WRBTR
wrbtr_012(016), "Amount
* data element: DZTERM
zterm_013(004),
* data element: DZBD1T
zbd1t_014(003),
* data element: DZFBDT
zfbdt_015(010),
* data element: DZUONR
zuonr_016(018), "Invoice Number
* data element: SGTXT
sgtxt_017(050), " PO number
* data element: NEWBS
newbs_018(002),
* data element: NEWKO
newko_019(017), "GL Account
* data element: WRBTR
wrbtr_020(016), "Amount
* data element: MWSKZ
mwskz_021(002), "Tax
* data element: DZUONR
zuonr_022(018), "Invoice Number
* data element: SGTXT
sgtxt_023(050), "PO Number
* data element: PRCTR
prctr_024(010), "Profit Center
* data element: WRBTR
wrbtr_025(016), " Amount
* data element: MWSKZ
mwskz_026(002), "Tax
* data element: DZUONR
zuonr_027(018), "Invoice Number
* data element: SGTXT
sgtxt_028(050), "PO Number
* data element: FMORE
fmore_029(001),
* data element: PRCTR
prctr_030(010), "Pr Center
* data element: FWSTE
fwste_01_031(016),
END OF record.
DATA: BEGIN OF it_excel OCCURS 0,
* data element: XBLNR1
xblnr_007(016), "Invoice Number
* data element: BLDAT
bldat_001(010), "Invoice Date
* data element: WRBTR
wrbtr_012(016), "Amount
* data element: WRBTR
wrbtr_025(016), " Tax Amount
* data element: WRBTR
wrbtr_020(016), "Gross Amount
* data element: BLART
blart_002(002), " No of units
* data element: MONAT
monat_005(002), "No of units second test"
* data element: BKTXT
bktxt_008(025), "PO number
* data element: SGTXT
sgtxt_017(050), " PO number
* data element: BUKRS
bukrs_003(004), " Company Code
* data element: BUDAT
budat_004(010), "Posting Date
* budat_004 TYPE string, "Posting Date
* data element: WAERS
waers_006(005), "Currency*
* data element: NEWKO
newko_011(017), "Customer number or GL account
* data element : kunnr
kunnr_019(010), " customer
mwskz(002),
prctr(010),
date(002),
month(002),
** data element: BKTXT
* bktxt_008(025), "PO number
** data element: SAEOBJART
* docid_009(010),
** data element: NEWBS
* newbs_010(002), "posting Key
** data element: DZTERM
* zterm_013(004),
** data element: DZBD1T
* zbd1t_014(003),
** data element: DZFBDT
* zfbdt_015(010),
** data element: DZUONR
* zuonr_016(018), "Invoice Number
** data element: NEWBS
* newbs_018(002),
** data element: NEWKO
* newko_019(017), "GL Account
** data element: MWSKZ
* mwskz_021(002), "Tax
** data element: DZUONR
* zuonr_022(018), "Invoice Number
** data element: SGTXT
* sgtxt_023(050), "PO Number
** data element: PRCTR
* prctr_024(010), "Profit Center
** data element: MWSKZ
* mwskz_026(002), "Tax
** data element: DZUONR
* zuonr_027(018), "Invoice Number
** data element: SGTXT
* sgtxt_028(050), "PO Number
** data element: FMORE
* fmore_029(001),
** data element: PRCTR
* prctr_030(010), "Pr Center
** data element: FWSTE
* fwste_01_031(016),
END OF it_excel.
DATA : BEGIN OF it_bkpf OCCURS 0,
belnr LIKE bkpf-belnr,
budat LIKE bkpf-budat,
bldat LIKE bkpf-bldat,
xblnr LIKE bkpf-xblnr,
bktxt LIKE bkpf-bktxt,
total LIKE bseg-dmbtr,
numdocs TYPE p DECIMALS 0,
END OF it_bkpf,
BEGIN OF it_bseg OCCURS 0,
belnr LIKE bseg-belnr,
dmbtr LIKE bseg-dmbtr,
mwsts LIKE bseg-mwsts,
pswsl LIKE bseg-pswsl,
END OF it_bseg,
BEGIN OF it_final OCCURS 0,
belnr LIKE bkpf-belnr,
budat LIKE bkpf-budat,
bldat LIKE bkpf-bldat,
xblnr LIKE bkpf-xblnr,
bktxt LIKE bkpf-bktxt,
dmbtr LIKE bseg-dmbtr,
mwsts LIKE bseg-mwsts,
pswsl LIKE bseg-pswsl,
END OF it_final.
***** End generated data section ***
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pfile.
PERFORM sub_browse_file. "Get file name
START-OF-SELECTION.
PERFORM sub_data_load. " Transfer excel into internal table.
PERFORM sub_calc_excel.
IF report = 'X'.
* PERFORM data_selection.
* PERFORM data_move.
*********************************GET ALV DATA
PERFORM alv_get_data.
*********************************ALV GRID DATA
PERFORM alv_grid.
ENDIF.
*if report = ''.
* PERFORM write.
* PERFORM open_dataset USING dataset.
PERFORM open_group.
* DO.
* READ DATASET dataset INTO record.
LOOP AT it_excel.
* IF sy-subrc <> 0. EXIT. ENDIF.
PERFORM bdc_dynpro USING 'SAPMF05A' '0100'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF05A-NEWKO'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BKPF-BLDAT'
it_excel-bldat_001.
PERFORM bdc_field USING 'BKPF-BLART'
'DR'." record-blart_002.
PERFORM bdc_field USING 'BKPF-BUKRS'
it_excel-bukrs_003.
PERFORM bdc_field USING 'BKPF-BUDAT'
it_excel-budat_004.
PERFORM bdc_field USING 'BKPF-MONAT'
'3'. "record-monat_005.
PERFORM bdc_field USING 'BKPF-WAERS'
it_excel-waers_006.
PERFORM bdc_field USING 'BKPF-XBLNR'
it_excel-xblnr_007.
PERFORM bdc_field USING 'BKPF-BKTXT'
it_excel-bktxt_008.
PERFORM bdc_field USING 'FS006-DOCID'
'*' ."record-docid_009.
PERFORM bdc_field USING 'RF05A-NEWBS'
'01'." record-newbs_010.
PERFORM bdc_field USING 'RF05A-NEWKO'
it_excel-kunnr_019 .
PERFORM bdc_dynpro USING 'SAPMF05A' '0301'.
PERFORM bdc_field USING 'BDC_CURSOR'
'RF05A-NEWKO'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BSEG-WRBTR'
it_excel-wrbtr_020." it_excel-wrbtr_012.
PERFORM bdc_field USING 'BSEG-ZTERM'
'NT30' ." record-zterm_013.
PERFORM bdc_field USING 'BSEG-ZBD1T'
'30'."record-zbd1t_014.
PERFORM bdc_field USING 'BSEG-ZFBDT'
it_excel-bldat_001."record-zfbdt_015.
PERFORM bdc_field USING 'BSEG-ZUONR'
it_excel-xblnr_007."record-zuonr_016.
PERFORM bdc_field USING 'BSEG-SGTXT'
it_excel-sgtxt_017.
PERFORM bdc_field USING 'RF05A-NEWBS'
'50'." record-newbs_018.
PERFORM bdc_field USING 'RF05A-NEWKO'
it_excel-newko_011." record-newko_019."Gl account
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'BDC_CURSOR'
'BSEG-SGTXT'.
PERFORM bdc_field USING 'BDC_OKCODE'
'/00'.
PERFORM bdc_field USING 'BSEG-WRBTR'
it_excel-wrbtr_012."changes from 12 to 20
PERFORM bdc_field USING 'BSEG-MWSKZ'
it_excel-mwskz." record-mwskz_021.
PERFORM bdc_field USING 'BSEG-ZUONR'
it_excel-xblnr_007." record-zuonr_022.
PERFORM bdc_field USING 'BSEG-SGTXT'
it_excel-sgtxt_017." record-sgtxt_023.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_CURSOR'
'COBL-PRCTR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTE'.
PERFORM bdc_field USING 'COBL-PRCTR'
it_excel-prctr ." record-prctr_024.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'BDC_CURSOR'
'BSEG-WRBTR'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=STER'.
PERFORM bdc_field USING 'BSEG-WRBTR'
it_excel-wrbtr_012." it_excel-wrbtr_025.
PERFORM bdc_field USING 'BSEG-MWSKZ'
it_excel-mwskz.
PERFORM bdc_field USING 'BSEG-ZUONR'
it_excel-xblnr_007." record-zuonr_027.
PERFORM bdc_field USING 'BSEG-SGTXT'
it_excel-sgtxt_017." record-sgtxt_028.
PERFORM bdc_field USING 'DKACB-FMORE'
'X' ."record-fmore_029.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_CURSOR'
'COBL-PARGB'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=ENTE'.
PERFORM bdc_field USING 'COBL-PRCTR'
it_excel-prctr." record-prctr_030.
PERFORM bdc_dynpro USING 'SAPLTAX1' '0300'.
PERFORM bdc_field USING 'BDC_CURSOR'
'BSET-FWSTE(01)'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=GOBU'.
PERFORM bdc_field USING 'BSET-FWSTE(01)'
it_excel-wrbtr_025." record-fwste_01_031.
PERFORM bdc_transaction USING 'FB01'.
REFRESH:bdcdata,messtab.
ENDLOOP.
REFRESH:bdcdata.
** PERFORM bdc_dynpro USING 'SAPMF05A' '0100'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'RF05A-NEWKO'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '/00'.
* PERFORM bdc_field USING 'BKPF-BLDAT'
* record-bldat_001.
* PERFORM bdc_field USING 'BKPF-BLART'
* record-blart_002.
* PERFORM bdc_field USING 'BKPF-BUKRS'
* record-bukrs_003.
* PERFORM bdc_field USING 'BKPF-BUDAT'
* record-budat_004.
* PERFORM bdc_field USING 'BKPF-MONAT'
* record-monat_005.
* PERFORM bdc_field USING 'BKPF-WAERS'
* record-waers_006.
* PERFORM bdc_field USING 'BKPF-XBLNR'
* record-xblnr_007.
* PERFORM bdc_field USING 'BKPF-BKTXT'
* record-bktxt_008.
* PERFORM bdc_field USING 'FS006-DOCID'
* record-docid_009.
* PERFORM bdc_field USING 'RF05A-NEWBS'
* record-newbs_010.
* PERFORM bdc_field USING 'RF05A-NEWKO'
* record-newko_011.
* PERFORM bdc_dynpro USING 'SAPMF05A' '0301'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'RF05A-NEWKO'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '/00'.
* PERFORM bdc_field USING 'BSEG-WRBTR'
* record-wrbtr_012.
* PERFORM bdc_field USING 'BSEG-ZTERM'
* record-zterm_013.
* PERFORM bdc_field USING 'BSEG-ZBD1T'
* record-zbd1t_014.
* PERFORM bdc_field USING 'BSEG-ZFBDT'
* record-zfbdt_015.
* PERFORM bdc_field USING 'BSEG-ZUONR'
* record-zuonr_016.
* PERFORM bdc_field USING 'BSEG-SGTXT'
* record-sgtxt_017.
* PERFORM bdc_field USING 'RF05A-NEWBS'
* record-newbs_018.
* PERFORM bdc_field USING 'RF05A-NEWKO'
* record-newko_019.
* PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'BSEG-SGTXT'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '/00'.
* PERFORM bdc_field USING 'BSEG-WRBTR'
* record-wrbtr_020.
* PERFORM bdc_field USING 'BSEG-MWSKZ'
* record-mwskz_021.
* PERFORM bdc_field USING 'BSEG-ZUONR'
* record-zuonr_022.
* PERFORM bdc_field USING 'BSEG-SGTXT'
* record-sgtxt_023.
* PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'COBL-PRCTR'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=ENTE'.
* PERFORM bdc_field USING 'COBL-PRCTR'
* record-prctr_024.
* PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'BSEG-WRBTR'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=STER'.
* PERFORM bdc_field USING 'BSEG-WRBTR'
* record-wrbtr_025.
* PERFORM bdc_field USING 'BSEG-MWSKZ'
* record-mwskz_026.
* PERFORM bdc_field USING 'BSEG-ZUONR'
* record-zuonr_027.
* PERFORM bdc_field USING 'BSEG-SGTXT'
* record-sgtxt_028.
* PERFORM bdc_field USING 'DKACB-FMORE'
* record-fmore_029.
* PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'COBL-PARGB'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=ENTE'.
* PERFORM bdc_field USING 'COBL-PRCTR'
* record-prctr_030.
* PERFORM bdc_dynpro USING 'SAPLTAX1' '0300'.
* PERFORM bdc_field USING 'BDC_CURSOR'
* 'BSET-FWSTE(01)'.
* PERFORM bdc_field USING 'BDC_OKCODE'
* '=GOBU'.
* PERFORM bdc_field USING 'BSET-FWSTE(01)'
* record-fwste_01_031.
* PERFORM bdc_transaction USING 'FB01'.
* ENDDO.
PERFORM close_group.
* PERFORM close_dataset USING dataset.
*endif.
*& Form sub_browse_file
* text
* --> p1 text
* <-- p2 text
FORM sub_browse_file .
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
* FIELD_NAME = ' '
IMPORTING
file_name = pfile.
ENDFORM. " sub_browse_file
*& Form sub_data_load
* text
* --> p1 text
* <-- p2 text
FORM sub_data_load .
CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'
EXPORTING
* I_FIELD_SEPERATOR =
i_line_header = 'X'
i_tab_raw_data = it_raw
i_filename = pfile
TABLES
i_tab_converted_data = it_excel[]
* EXCEPTIONS
* CONVERSION_FAILED = 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.
ENDFORM. " sub_data_load
**& Form data_selection
** text
** --> p1 text
** <-- p2 text
*FORM data_selection .
* SELECT * FROM bkpf
* INTO CORRESPONDING FIELDS OF TABLE it_bkpf
* WHERE budat = p_budat AND
* bukrs = p_bukrs.
* IF NOT it_bkpf[] IS INITIAL.
* SELECT belnr dmbtr mwsts pswsl
* FROM bseg INTO TABLE it_bseg
* FOR ALL ENTRIES IN it_bkpf
* WHERE belnr = it_bkpf-belnr AND
* kunnr = p_kunnr AND
* hkont = p_hkont AND
* pswsl = p_waers.
* ENDIF.
*ENDFORM. " data_selection
**& Form data_move
** text
** --> p1 text
** <-- p2 text
*FORM data_move.
* SORT : it_bseg BY belnr,
* it_bkpf BY belnr.
* LOOP AT it_bseg.
* it_final-dmbtr = it_bseg-dmbtr.
* it_final-belnr = it_bseg-belnr.
* it_final-mwsts = it_bseg-mwsts.
* it_final-pswsl = it_bseg-pswsl.
* READ TABLE it_bkpf WITH KEY belnr = it_bseg-belnr BINARY SEARCH.
* IF sy-subrc = 0.
* it_final-budat = it_bkpf-budat.
* it_final-bldat = it_bkpf-bldat.
* it_final-xblnr = it_bkpf-xblnr.
* it_final-bktxt = it_bkpf-bktxt.
* ENDIF.
* APPEND it_final.
* CLEAR it_final.
* ENDLOOP.
*ENDFORM. " data_move
*& Form alv_get_data
* text
* --> p1 text
* <-- p2 text
FORM alv_get_data .
CLEAR it_fieldcat.
***************** Document number
* wa_fieldcat-col_pos = '1'. " ALV O/P COL-1
wa_fieldcat-fieldname = 'XBLNR_007'.
wa_fieldcat-seltext_m = 'Document number'.
wa_fieldcat-just = 'L'.
wa_fieldcat-no_zero(1) = 'X'.
wa_fieldcat-outputlen = 15.
wa_fieldcat-tabname = 'IT_EXCEL'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
***************** Posting Date
* wa_fieldcat-col_pos = '2'. " ALV O/P COL-1
wa_fieldcat-fieldname = 'BUDAT_004'.
wa_fieldcat-seltext_m = 'Posting Date'.
wa_fieldcat-just = 'L'.
wa_fieldcat-no_zero(1) = 'X'.
wa_fieldcat-outputlen = 20.
wa_fieldcat-tabname = 'IT_EXCEL'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
******************** Document Date
* wa_fieldcat-col_pos = '3'. " ALV O/P COL-2
wa_fieldcat-fieldname = 'BLDAT_001'.
wa_fieldcat-seltext_m = 'Document Date'.
wa_fieldcat-just = 'L'.
wa_fieldcat-tabname = 'IT_EXCEL'.
wa_fieldcat-outputlen = 15.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
********************* REFERENCE DOCUMENT
** wa_fieldcat-col_pos = '4'. " ALV O/P COL-2
* wa_fieldcat-fieldname = 'XBLNR'.
* wa_fieldcat-seltext_m = 'REFERENCE DOCUMENT'.
* wa_fieldcat-just = 'L'.
* wa_fieldcat-tabname = 'IT_EXCEL'.
** wa_fieldcat-outputlen = 15.
* APPEND wa_fieldcat TO it_fieldcat.
* CLEAR wa_fieldcat.
***************** DOCUMENT HEADER TEXT
* wa_fieldcat-col_pos = '5'. " ALV O/P COL-3
wa_fieldcat-fieldname = 'SGTXT_017'.
wa_fieldcat-seltext_m = 'DOCUMENT HEADER TEXT'.
wa_fieldcat-just = 'L'.
wa_fieldcat-tabname = 'IT_EXCEL'.
* wa_fieldcat-outputlen = 15.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
*******************Invoice Net amount
* wa_fieldcat-col_pos = '6'. " ALV O/P COL-4
wa_fieldcat-fieldname = 'WRBTR_012'.
wa_fieldcat-seltext_m = 'Invoice Net amount'.
wa_fieldcat-just = 'L'.
wa_fieldcat-tabname = 'IT_EXCEL'.
* wa_fieldcat-outputlen = 15.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
*********** Tax Amount
* wa_fieldcat-col_pos = '7'. " ALV O/P COL-5
wa_fieldcat-fieldname = 'WRBTR_025'.
wa_fieldcat-seltext_m = 'Tax Amount'.
wa_fieldcat-just = 'L'.
* wa_fieldcat-no_zero(1) = 'X'.
wa_fieldcat-tabname = 'IT_EXCEL'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
*********** NEt Amount
* wa_fieldcat-col_pos = '7'. " ALV O/P COL-5
wa_fieldcat-fieldname = 'WRBTR_020'.
wa_fieldcat-seltext_m = 'Net Amount'.
wa_fieldcat-just = 'L'.
* wa_fieldcat-no_zero(1) = 'X'.
wa_fieldcat-tabname = 'IT_EXCEL'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
*********** General ledger currency
* wa_fieldcat-col_pos = '7'. " ALV O/P COL-5
wa_fieldcat-fieldname = 'WAERS_006'.
wa_fieldcat-seltext_l = 'General ledger currency'.
wa_fieldcat-just = 'L'.
* wa_fieldcat-no_zero(1) = 'X'.
wa_fieldcat-outputlen = 25.
wa_fieldcat-tabname = 'IT_EXCEL'.
APPEND wa_fieldcat TO it_fieldcat.
CLEAR wa_fieldcat.
ENDFORM. " alv_get_data
*& Form alv_grid
* text
* --> p1 text
* <-- p2 text
FORM alv_grid .
* PERFORM fill_list_header USING it_top_of_page[].
* PERFORM event-build USING gt_events[].
PERFORM fill_layout USING ls_layout.
MESSAGE 'Please press F3 to generate a session or call transaction method after getting report!' TYPE 'I'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = ls_layout
it_fieldcat = it_fieldcat
it_events = gt_events[]
i_save = 'A'
TABLES
t_outtab = it_excel
EXCEPTIONS
program_error = 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.
ENDFORM. " alv_grid
* FORM FILL_LAYOUT *
FORM fill_layout USING p_ls_layout TYPE slis_layout_alv.
p_ls_layout-zebra = 'X'.
p_ls_layout-cell_merge = 'X'.
ENDFORM. "fill_layout
*& Form sub_calc_excel
* text
* --> p1 text
* <-- p2 text
FORM sub_calc_excel .
data: idate TYPE sy-datum,
tdat8 type string.
LOOP AT it_excel.
CONCATENATE it_excel-blart_002 '/' it_excel-monat_005 '/' it_excel-bktxt_008 INTO
it_excel-sgtxt_017.
it_excel-bukrs_003 = p_bukrs.
* it_excel-budat_004 = p_budat.
it_excel-waers_006 = p_waers.
it_excel-newko_011 = p_hkont.
it_excel-kunnr_019 = p_kunnr.
it_excel-mwskz = p_mwskz.
it_excel-prctr = p_prctr.
idate = p_budat.
CALL FUNCTION 'DATUMSAUFBEREITUNG'
EXPORTING
* FLAGM = ' '
* FLAGW = ' '
IDATE = idate
* IMONT = ' '
* IWEEK = ' '
IMPORTING
* MDAT4 =
* MDAT6 =
* TDAT4 =
* TDAT6 =
TDAT8 = tdat8
* WDAT4 =
* WDAT6 =
* EXCEPTIONS
* DATFM_UNGUELTIG = 1
* DATUM_UNGUELTIG = 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.
it_excel-budat_004 = tdat8.
* CONCATENATE it_excel-budat_004+4(2) '/' it_excel-budat_004+6(2) '/' it_excel-budat_004+0(4)
* INTO it_excel-budat_004.
* SPLIT it_excel-bldat_001 AT '/' INTO it_excel-month it_excel-date.
* CONCATENATE it_excel-date '.' it_excel-month '.' it_excel-bldat_001+6(4) INTO it_excel-bldat_001.
MODIFY it_excel.
CLEAR it_excel.
ENDLOOP.
ENDFORM. " sub_calc_excel
*& Form write
* text
* --> p1 text
* <-- p2 text
*form write .
*OPEN DATASET dataset FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
*data: wa_excel like line of it_excel.
*loop at it_excel into wa_excel.
*TRANSFER wa_excel to dataset.
*endloop.
*CLOSE DATASETdataset.
*endform. " write -
Problems with a call transaction
Hi, I'm having some problems with a call transaction and I cannot understand why. I put A in the mode, and I am seeing the dynpros and I am pressing enter it works perfectly but when I use mode N it tells me that there is not information for one of the dynpros and it doesn't work. Does anybody know the problem and how to solve it??
Thanks in advanceHi,
First of all thank you very much for your time.
I am using FB05 and the problem is in dynpro SAPLKACB 0002, and it says that batch input data doesn't exist. Here is the code, maybe you can see what is happening
LOOP AT t_resumen WHERE belnr = t_batch-belnr AND
( contador = 3 OR contador = 4 or CONTADOR = 5 ).
READ TABLE t_clave WITH KEY belnr = t_resumen-belnr.
d_clave = t_clave-bschl.
i = i + 1.
CASE i.
WHEN 1.
PERFORM bdc_dynpro USING 'SAPMF05A' '0700'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_field USING 'RF05A-NEWBS' t_resumen-bschl.
PERFORM bdc_field USING 'RF05A-NEWKO' t_resumen-hkont.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
j_wrbtr = t_resumen-wrbtr.
REPLACE '.' WITH ',' INTO j_wrbtr.
PERFORM bdc_field USING 'BSEG-WRBTR' j_wrbtr.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
WHEN t.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'RF05A-NEWBS' t_resumen-bschl.
PERFORM bdc_field USING 'RF05A-NEWKO' t_resumen-hkont.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
j_hkont = t_resumen-hkont.
j_clave = t_resumen-bschl.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.
j_wrbtr = t_resumen-wrbtr.
REPLACE '.' WITH ',' INTO j_wrbtr.
PERFORM bdc_field USING 'BSEG-WRBTR' j_wrbtr.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
WHEN OTHERS.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'RF05A-NEWBS' t_resumen-bschl.
PERFORM bdc_field USING 'RF05A-NEWKO' t_resumen-hkont.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
j_hkont = t_resumen-hkont.
j_clave = t_resumen-bschl.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
j_wrbtr = t_resumen-wrbtr.
REPLACE '.' WITH ',' INTO j_wrbtr.
PERFORM bdc_field USING 'BSEG-WRBTR' j_wrbtr.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
ENDCASE.
READ TABLE t_porcentajes WITH KEY gjahr = t_resumen-zzbad
zzbtd = t_resumen-zzbtd.
IF j_hkont = t_porcentajes-cfacpr.
PERFORM bdc_field USING 'COBL-PRCTR' t_porcentajes-prctrfac.
PERFORM bdc_field USING 'COBL-ZZBTD' t_resumen-zzbtd.
PERFORM bdc_field USING 'COBL-ZZBAD' t_resumen-zzbad.
ELSEIF t_resumen-hkont = t_porcentajes-cadmin.
PERFORM bdc_field USING 'COBL-KOSTL' '20801'.
ELSEIF t_resumen-hkont = t_porcentajes-creca.
PERFORM bdc_field USING 'COBL-KOSTL' '20401'.
ELSE.
IF d_clave = 01 OR d_clave = 04 OR d_clave = 40 OR d_clave = 09.
IF j_hkont >= 424001 AND j_hkont <= 424005.
PERFORM bdc_field USING 'COBL-PRCTR' 'DUMMY'.
ELSEIF j_hkont >= 424601 AND j_hkont <= 424605.
IF j_clave = 40.
PERFORM bdc_field USING 'COBL-PRCTR' 'DUMMY'.
ENDIF.
ENDIF.
ELSEIF d_clave = 11 OR d_clave = 12 OR d_clave = 14 OR d_clave = 50.
IF j_hkont >= 424001 AND j_hkont <= 424005.
PERFORM bdc_field USING 'COBL-PRCTR' 'DUMMY'.
ELSEIF j_hkont >= 424601 AND j_hkont <= 424605.
IF j_clave = 50.
PERFORM bdc_field USING 'COBL-PRCTR' 'DUMMY'.
ENDIF.
ENDIF.
ENDIF.
*Fin modificacion marzo 2007.----
PERFORM bdc_field USING 'COBL-ZZBTD' t_resumen-zzbtd.
PERFORM bdc_field USING 'COBL-ZZBAD' t_resumen-zzbad.
PERFORM bdc_field USING 'COBL-ZZBTT' t_resumen-zzbtt.
PERFORM bdc_field USING 'COBL-ZZBTU' t_resumen-zzbtu.
PERFORM bdc_field USING 'COBL-ZZBTS' t_resumen-zzbts.
PERFORM bdc_field USING 'COBL-ZZBAG' t_resumen-zzbag.
PERFORM bdc_field USING 'COBL-ZZBRE' t_resumen-zzbre.
PERFORM bdc_field USING 'COBL-ZZBC8' t_resumen-zzbc8.
PERFORM bdc_field USING 'COBL-ZZBC9' t_resumen-zzbc9.
ENDIF.
ENDLOOP. -
Calling second transaction from a bdc prg
Hi experts
I am using a prog for ISU-Transaction EG33 now my requirement is I have to call another transaction IL02 within this transaction my requirement is just to tick a check box.
Another thing here after executing my current prg ( eg33) function location is created after completion of transction ....the same function location need to be used in my second transaction for which whom i am gonna tick tat check box.(single installation)
thanks in advance
any ideas ???hi,
u can have a look at this code
*& Report ZFIC_BDC_F_43_02_ADJ
REPORT zfic_bdc_f_43_02_adj MESSAGE-ID zfi NO STANDARD PAGE HEADING .
DATA : t_excel LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE,
v_mvar1 LIKE balm-msgv1,
v_mtext(100) TYPE c,
v_tabix(4) TYPE c ,
t_bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.
----declaration of internal table for uploading the excel file -
DATA: BEGIN OF itab OCCURS 0 ,
bukrs LIKE bkpf-bukrs,
blart LIKE bkpf-blart,
bldat(10) TYPE c ,
budat(10) TYPE c ,
monat LIKE bkpf-monat,
waers LIKE bkpf-waers,
docid LIKE fs006-docid,
newbs LIKE rf05a-newbs,
newko LIKE rf05a-newko,
mwskz LIKE bseg-mwskz,
wrbtr LIKE bseg-wrbtr,
zuonr LIKE bseg-zuonr,
sgtxt LIKE bseg-sgtxt,
zfbdt(10) TYPE c ,
prctr LIKE cobl-prctr,
bukrs1 TYPE bkpf-bukrs,
blart1 TYPE bkpf-blart,
bldat1(10) TYPE c ,
budat1(10) TYPE c ,
monat1 TYPE bkpf-monat,
waers1 TYPE bkpf-waers,
newbs1 LIKE rf05a-newbs,
newko1 LIKE rf05a-newko,
newum LIKE rf05a-newum,
wrbtr1(16) TYPE c,
zuonr1 LIKE bseg-zuonr,
sgtxt1 LIKE bseg-sgtxt,
zfbdt1(10) TYPE c ,
bupla1 LIKE bseg-bupla,
secco1 LIKE bseg-secco,
prctr1 LIKE bseg-prctr,
docid1 LIKE fs006-docid,
wrbtr(16) TYPE c ,
newbs2 LIKE rf05a-newbs ,
newbs3 LIKE rf05a-newbs ,
END OF itab.
DATA: BEGIN OF messtab OCCURS 0 .
INCLUDE STRUCTURE bdcmsgcoll.
DATA: row TYPE i,
key(30),
END OF messtab.
DATA: BEGIN OF messtab2 OCCURS 0,
mtype LIKE bdcmsgcoll-msgtyp,
mtext(100) TYPE c,
row TYPE i,
key(30) TYPE c,
END OF messtab2.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETER : p_pfile(128) TYPE c OBLIGATORY,
p_pbrow TYPE i OBLIGATORY,
p_perow TYPE i OBLIGATORY,
p_pdis LIKE ctu_params-dismode OBLIGATORY DEFAULT
'A'.
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_pfile .
CALL FUNCTION 'F4_FILENAME'
EXPORTING
program_name = syst-cprog
dynpro_number = syst-dynnr
FIELD_NAME = ' '
IMPORTING
file_name = p_pfile .
START-OF-SELECTION .
----uploading the excel file to internal table -
PERFORM upload_file .
-----filling the bdc table -
PERFORM fill_bdctable .
------writing the error log -
PERFORM write_messtab .
*& Form UPLOAD_FILE
text
--> p1 text
<-- p2 text
FORM upload_file .
CLEAR : t_excel .
REFRESH : t_excel .
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = p_pfile
i_begin_col = '1'
i_begin_row = p_pbrow
i_end_col = '27'
i_end_row = p_perow
TABLES
intern = t_excel
EXCEPTIONS
inconsistent_parameters = 1
upload_ole = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE e000 WITH text-002.
ENDIF.
LOOP AT t_excel .
CASE t_excel-col .
WHEN '001'.
itab-bldat = t_excel-value.
WHEN '002'.
itab-budat = t_excel-value.
WHEN '003'.
itab-blart = t_excel-value.
WHEN '004'.
itab-bukrs = t_excel-value.
WHEN '005'.
itab-monat = t_excel-value.
WHEN '006'.
itab-waers = t_excel-value.
WHEN '007'.
itab-docid = t_excel-value.
WHEN '008'.
itab-newbs = t_excel-value.
WHEN '009'.
itab-newko = t_excel-value.
WHEN '010'.
itab-wrbtr = t_excel-value.
WHEN '011'.
itab-bupla1 = itab-bukrs.
itab-secco1 = itab-bukrs.
itab-zfbdt = t_excel-value.
WHEN '012'.
itab-zuonr = t_excel-value.
WHEN '013'.
itab-sgtxt = t_excel-value.
WHEN '014'.
itab-newbs1 = t_excel-value.
WHEN '015'.
itab-newko1 = t_excel-value.
WHEN '016'.
itab-prctr = t_excel-value .
WHEN '017'.
itab-wrbtr = t_excel-value .
WHEN '018'.
itab-bldat1 = t_excel-value.
WHEN '019'.
itab-budat1 = t_excel-value.
WHEN '020'.
itab-blart1 = t_excel-value.
WHEN '021'.
itab-monat1 = t_excel-value.
WHEN '022'.
itab-newbs2 = t_excel-value.
WHEN '023'.
itab-wrbtr1 = t_excel-value.
WHEN '024'.
itab-zuonr1 = t_excel-value.
WHEN '025'.
itab-sgtxt1 = t_excel-value.
WHEN '026'.
itab-newbs3 = t_excel-value.
WHEN '027'.
itab-newum = t_excel-value .
AT END OF row .
APPEND itab.
CLEAR itab .
ENDAT.
ENDCASE .
ENDLOOP.
ENDFORM. " UPLOAD_FILE
*& Form fill_bdctable
text
--> p1 text
<-- p2 text
FORM fill_bdctable .
LOOP AT itab .
v_tabix = sy-tabix .
PERFORM bdc_dynpro USING :
'1' 'SAPMF05A' '0100',
' ' 'BDC_CURSOR' 'FS006-DOCID',
' ' 'BDC_OKCODE' '/00',
' ' 'BKPF-BLDAT' itab-bldat,
' ' 'BKPF-BLART' itab-blart,
' ' 'BKPF-BUKRS' itab-bukrs,
' ' 'BKPF-BUDAT' itab-budat,
' ' 'BKPF-MONAT' itab-monat,
' ' 'BKPF-WAERS' itab-waers,
' ' 'FS006-DOCID' itab-docid,
' ' 'RF05A-NEWBS' itab-newbs,
' ' 'RF05A-NEWKO' itab-newko,
'1' 'SAPMF05A' '0302',
' ' 'BDC_CURSOR' 'RF05A-NEWKO',
' ' 'BDC_OKCODE' '/00',
' ' 'BSEG-WRBTR' itab-wrbtr,
' ' 'BSEG-MWSKZ' ITAB-MWSKZ,
' ' 'BSEG-ZFBDT' itab-zfbdt,
' ' 'BSEG-ZUONR' itab-zuonr,
' ' 'BSEG-SGTXT' itab-sgtxt,
' ' 'RF05A-NEWBS' itab-newbs1,
' ' 'RF05A-NEWKO' itab-newko1,
'1' 'SAPMF05A' '0300',
' ' 'BDC_CURSOR' 'BSEG-WRBTR',
' ' 'BDC_OKCODE' '/00',
' ' 'BSEG-WRBTR' itab-wrbtr,
'1' 'SAPLKACB' '0002',
' ' 'BDC_CURSOR' 'COBL-PRCTR',
' ' 'BDC_OKCODE' '=ENTE',
' ' 'COBL-PRCTR' itab-prctr,
'1' 'SAPMF05A' '0300',
' ' 'BDC_CURSOR' 'BSEG-WRBTR',
' ' 'BDC_OKCODE' '=BS',
' ' 'BSEG-WRBTR' itab-wrbtr,
'1' 'SAPLKACB' '0002',
' ' 'BDC_CURSOR' 'COBL-PRCTR',
' ' 'BDC_OKCODE' '=ENTE',
' ' 'COBL-PRCTR' itab-prctr,
'1' 'SAPMF05A' '0700',
' ' 'BDC_CURSOR' 'RF05A-NEWBS',
' ' 'BDC_OKCODE' '=BU'.
CALL TRANSACTION 'F-43' USING t_bdcdata
MODE p_pdis
UPDATE 'A' MESSAGES INTO messtab.
LOOP AT messtab WHERE msgtyp = 'E' .
v_mvar1 = messtab-msgv1+0(49).
CALL FUNCTION 'MESSAGE_PREPARE'
EXPORTING
language = sy-langu
msg_id = messtab-msgid
msg_no = messtab-msgnr
msg_var1 = v_mvar1
MSG_VAR2 = ' '
MSG_VAR3 = ' '
MSG_VAR4 = ' '
IMPORTING
msg_text = v_mtext
EXCEPTIONS
function_not_completed = 1
message_not_found = 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.
messtab-row = p_pbrow + v_tabix - 1.
messtab-key = itab-newbs.
messtab2-row = messtab-row.
messtab2-key = messtab-key.
messtab2-mtype = messtab-msgtyp.
messtab2-mtext = v_mtext.
APPEND messtab2.
CLEAR messtab.
ENDLOOP.
REFRESH t_bdcdata .
PERFORM bdc_dynpro USING :
'1' 'SAPMF05A' '0100',
' ' 'BDC_CURSOR' 'RF05A-NEWKO',
' ' 'BDC_OKCODE' '/00',
' ' 'BKPF-BLDAT' itab-bldat1,
' ' 'BKPF-BLART' itab-blart1,
' ' 'BKPF-BUKRS' itab-bukrs,
' ' 'BKPF-BUDAT' itab-budat1,
' ' 'BKPF-MONAT' itab-monat1,
' ' 'BKPF-WAERS' itab-waers,
' ' 'FS006-DOCID' itab-docid1,
' ' 'RF05A-NEWBS' itab-newbs2,
' ' 'RF05A-NEWKO' itab-newko,
'1' 'SAPMF05A' '0302',
' ' 'BDC_CURSOR' 'RF05A-NEWUM',
' ' 'BDC_OKCODE' '/00',
' ' 'BSEG-WRBTR' itab-wrbtr1,
' ' 'BSEG-ZFBDT' itab-zfbdt,
' ' 'BSEG-SGTXT' itab-sgtxt1,
' ' 'RF05A-NEWBS' itab-newbs3,
' ' 'RF05A-NEWKO' itab-newko,
' ' 'RF05A-NEWUM' itab-newum,
'1' 'SAPMF05A' '0304',
' ' 'BDC_CURSOR' 'BSEG-PRCTR',
' ' 'BDC_OKCODE' '/00',
' ' 'BSEG-WRBTR' itab-wrbtr1,
' ' 'BSEG-PRCTR' itab-prctr,
' ' 'BSEG-ZUONR' itab-zuonr1,
' ' 'BSEG-SGTXT' itab-sgtxt1,
' ' 'BSEG-BUPLA' itab-bukrs,
' ' 'BSEG-SECCO' itab-bukrs,
'1' 'SAPMF05A' '0304',
' ' 'BDC_CURSOR' 'BSEG-WRBTR',
' ' 'BDC_OKCODE' '=BS',
' ' 'BSEG-WRBTR' itab-wrbtr1,
' ' 'BSEG-BUPLA' itab-bukrs,
' ' 'BSEG-SECCO' itab-bukrs,
' ' 'BSEG-PRCTR' itab-prctr,
' ' 'BSEG-ZUONR' itab-zuonr1,
' ' 'BSEG-SGTXT' itab-sgtxt1,
'1' 'SAPMF05A' '0700',
' ' 'BDC_CURSOR' 'RF05A-NEWBS',
' ' 'BDC_OKCODE' '=BU'.
CALL TRANSACTION 'F-02' USING t_bdcdata
MODE p_pdis
UPDATE 'A' MESSAGES INTO messtab.
APPEND messtab.
REFRESH t_bdcdata .
ENDLOOP .
ENDFORM. " fill_bdctable
*& Form BDC_DYNPRO
text
-->P_0337 text
-->P_0338 text
-->P_0339 text
FORM bdc_dynpro USING flag
var1
var2.
CLEAR t_bdcdata .
IF flag = 1.
t_bdcdata-program = var1.
t_bdcdata-dynpro = var2.
t_bdcdata-dynbegin = 'X'.
ELSE.
t_bdcdata-fnam = var1.
t_bdcdata-fval = var2.
ENDIF.
APPEND t_bdcdata.
ENDFORM. " BDC_DYNPRO -
hi,
i am create a programm for f-27 type DG by bdc session method
when i execute it on 3rd screen of execution it ask for the values for PAYMENT TERMS but in manual entry OF F-27 it does not TAKE ANY PAYMENT TERMS. plz check my code and tell me where is the problem in coding.
CODES:
REPORT zcrdtdgupld
NO STANDARD PAGE HEADING LINE-SIZE 255.
*INCLUDE zdata_declarations.
I N T E R N A L T A B L E *
DATA: BEGIN OF wa_data,
bldat TYPE BDC_FVAL, "Document Date10
blart TYPE BDC_FVAL, "Document Type
bukrs TYPE BDC_FVAL, "Company Code
budat TYPE BDC_FVAL, "Posting Date10
monat TYPE BDC_FVAL, "Period
waers TYPE BDC_FVAL, "Currency
xblnr TYPE BDC_FVAL, "Reference Field
docid TYPE BDC_FVAL, "Document ID
newbs TYPE BDC_FVAL, "Posting Key
newko TYPE BDC_FVAL, "Account Code
wrbtr TYPE BDC_FVAL, "Amount in Documentcurrency
zfbdt TYPE BDC_FVAL, "Baseline Date10
newbs2 TYPE BDC_FVAL, "Account Key2
newko2 TYPE BDC_FVAL, "Account code2
wrbtr2 TYPE BDC_FVAL, "bseg-wrbtr,"Amount2
kostl TYPE BDC_FVAL, " cost center
prctr TYPE BDC_FVAL, " profit center
END OF wa_data.
D A T A *
DATA: it_data LIKE TABLE OF wa_data.
DATA: it_bdcdata TYPE TABLE OF bdcdata.
DATA: wa_bdcdata LIKE LINE OF it_bdcdata.
DATA: v_file TYPE string.
S E L E C T I O N S C R E E N *
SELECTION-SCREEN BEGIN OF BLOCK b.
PARAMETERS : pa_file LIKE fc03tab-pl00_file OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b.
AT SELECTION-SCREEN *
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pa_file.
PERFORM get_file USING pa_file.
S T A R T O F S E L E C T I O N *
START-OF-SELECTION.
v_file = pa_file.
*uploading flat file into internal table
PERFORM upload_file USING v_file CHANGING it_data.
*open the session
PERFORM open_session.
*POPULATING THE BDCDATA
LOOP AT it_data INTO wa_data.
REFRESH it_bdcdata.
PERFORM bdc_dynpro USING 'SAPMF05A' '0100' 'X'.
PERFORM bdc_field USING 'BDC_CURSOR' 'RF05A-NEWKO'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_field USING 'BKPF-BLDAT' wa_data-bldat.
PERFORM bdc_field USING 'BKPF-BLART' wa_data-blart.
PERFORM bdc_field USING 'BKPF-BUKRS' wa_data-bukrs.
PERFORM bdc_field USING 'BKPF-BUDAT' wa_data-budat.
PERFORM bdc_field USING 'BKPF-MONAT' wa_data-monat.
PERFORM bdc_field USING 'BKPF-WAERS' wa_data-waers.
PERFORM bdc_field USING 'BKPF-XBLNR' wa_data-xblnr.
PERFORM bdc_field USING 'FS006-DOCID' wa_data-docid.
PERFORM bdc_field USING 'RF05A-NEWBS' wa_data-newbs.
PERFORM bdc_field USING 'RF05A-NEWKO' wa_data-newko.
PERFORM bdc_dynpro USING 'SAPMF05A' '0301' 'X'.
PERFORM bdc_field USING 'BDC_CURSOR' 'BSEG-WRBTR'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
PERFORM bdc_field USING 'BSEG-WRBTR' wa_data-wrbtr.
PERFORM bdc_field USING 'BSEG-ZFBDT' wa_data-zfbdt.
PERFORM bdc_field USING 'RF05A-NEWBS' wa_data-newbs2.
PERFORM bdc_field USING 'RF05A-NEWKO' wa_data-newko2.
PERFORM bdc_dynpro USING 'SAPMF05A' '0300' 'X'.
PERFORM bdc_field USING 'BDC_CURSOR' 'BSEG-WRBTR'.
PERFORM bdc_field USING 'BDC_OKCODE' '=BU'.
PERFORM bdc_field USING 'BSEG-WRBTR' wa_data-wrbtr2.
PERFORM bdc_dynpro USING 'SAPLKACB' '0002' 'X'.
PERFORM bdc_field USING 'BDC_CURSOR' 'COBL-PRCTR'.
PERFORM bdc_field USING 'BDC_OKCODE' '=ENTE'.
PERFORM bdc_field USING 'COBL-KOSTL' wa_data-kostl. "'101902'
PERFORM bdc_field USING 'COBL-PRCTR' wa_data-prctr.
PERFORM bdc_insert USING 'F-27' it_bdcdata.
ENDLOOP.
*close the session
PERFORM close_session.
*& Form get_file
text
-->P_PA_FILE text
FORM get_file USING p_pa_file.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
program_name = syst-repid
field_name = 'PA_FILE'
CHANGING
file_name = pa_file.
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. " get_file
*& Form upload_file
text
-->P_V_FILE text
<--P_IT_DATA text
FORM upload_file USING p_v_file
CHANGING p_it_data LIKE it_data.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = p_v_file
filetype = 'DAT'
has_field_separator = '#'
TABLES
data_tab = p_it_data.
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. " upload_file
*& Form open_session
text
--> p1 text
<-- p2 text
FORM open_session .
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
client = sy-mandt
DEST = FILLER8
group = 'JAYANT'
HOLDDATE = FILLER8
keep = 'X'
user = sy-uname.
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_session
*& Form bdc_dynpro
text
-->P_0043 text
-->P_0044 text
FORM bdc_dynpro USING program TYPE BDC_PROG
dynpro TYPE BDC_DYNR
dynbegin TYPE BDC_START.
wa_bdcdata-program = program.
wa_bdcdata-dynpro = dynpro.
wa_bdcdata-dynbegin = dynbegin.
APPEND wa_bdcdata TO it_bdcdata.
CLEAR wa_bdcdata.
ENDFORM. " bdc_dynpro
*& Form bdc_field
text
-->P_0048 text
-->P_0049 text
FORM bdc_field USING fnam TYPE FNAM_____4
fval TYPE BDC_FVAL.
wa_bdcdata-fnam = fnam.
wa_bdcdata-fval = fval.
APPEND wa_bdcdata TO it_bdcdata.
CLEAR wa_bdcdata.
ENDFORM. " bdc_field
*& Form bdc_insert
text
-->P_0183 text
-->P_IT_BDCDATA text
FORM bdc_insert USING p_tcode TYPE sytcode
p_it_bdcdata LIKE it_bdcdata.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
tcode = p_tcode
TABLES
dynprotab = p_it_bdcdata.
ENDFORM. " bdc_insert
*& Form close_session
text
--> p1 text
<-- p2 text
FORM close_session .
CALL FUNCTION 'BDC_CLOSE_GROUP'.
ENDFORM. "close_session
plz help me in this programm
thanks
jayant.why not post this in the ABAP forum?
You expect Basis people to help you on this one? -
How to do packing for a delivery? (which transaction?)
How to do packing for a outbound delivery? Which transaction is used for this purpose?
I am trying to do post goods issue for a outbound delivery but it gives me the error 'Delivery item is not or only partially packed'. How to solve this?
Thank you!
Message was edited by: Krishenhi,
in the same transaction VL01n u can also do packing. on application tool bar u have a button <b>PACK(shift+F6)</b>
or choose this menu path.
<b>EDIT -> PACK</b>
u choose shipping materials and the items here for packing
hope this helps..
reward if useful.. -
In VL10C,Unselected Line items are copied for delivery creation in VL01N
Hello,
I am trying to create outbound deliveries for an sales order using t.code VL10C. when I execute VL10C,it takes me to next screen with all sales order line items where i am selecting some line items & select Dialog button for delivery creation. In this case all line items of the sales order get copied into VL01N screen instead of copying only the selected line items.
What may be the issue? Is this standard functionality of VL10C transaction? my requirement is to create delivery for selected line items using VL10C transaction.
Regards
Gouthamhi All,
It's a standard SAP process... See OSS note 453947...
For me it's a bug, not for SAP....
But create deliveries for only selected item work in backgroung process ! According to user role parameter "selected items"
Source code :
SET PARAMETER ID 'VST' FIELD <cs_postab>-vstel.
SET PARAMETER ID 'AUF' FIELD <cs_postab>-vbelv. -
> only order number (not item)
SET PARAMETER ID 'ALT' FIELD SPACE. "n_810897
EXPORT lv50c-datbi FROM lf_datbi TO MEMORY ID 'LEDAT'.
EXPORT d_tcode FROM sy-tcode
enque FROM cx_list_profil-enque "n_602290
TO MEMORY ID 'CALLING_TCODE'.
CALL TRANSACTION 'VL01N' AND SKIP FIRST SCREEN.
regards. -
Hi,
I made the delivery with transaction VL01N and of course it is generate a Material Document (mov type 601). if i try to change the material document i can change the field Doc Header text (mkpf-bktxt). So my question is can i fill this field when i am making the Delivery in transaction VL01N?
Thank you for your interest in my question
Best Regards
João FernandesHi Joas,
From your theard i could understand that you create a Delivery Note.
Delivery consists of three parts like
Picking, Packing and PGI( Post Goods Issue).
If you do picking and Packing the then save the delivery and delivery Number get Generated,But it doesnt mean Complete Delivery unless you Do the PGI.Once you Do the PGI Only the Material Document will get Generated.Yes while creation of Delivery you can maintian the text you required.
Hope this clarifies your doubt and Please Reward If Really Helpful,
Thanks and Regards,
Sateesh.Kandual -
Hai Friends,
Greetings.
I need to add one text box or small variable window in the standard transaction VL01N,,
for this any User Exit or Customer Exits are there? IF its avaial means pls help me to guide me the step by step procedures.... Please its very urgent...
Regds.
Vijay.Sure Vijay
There are a lot of documentations available please go through it also..to do it but i will brief you on the same
First we need to have a BADI definition
SO go to SE18
Enter the name of the BADI definition here
LE_SHP_TAB_CUST_ITEM
click on display
Most probably you can see "documentation tab"
Click on this and you will details on what the BADI is used for and if there are any Prerequisites for using this BADI....
now come back to the initial screen
Click on "Implementation" -> display
If there are any implementations it will show as a table control..if there are multiple ones..the active one will be shown in a differernt clour..in our case multiple implemntation is not supported..but in case where they are colour demarkation in table control will not be there.....
Then click on implementation - > Create to create your own implementation..save and give the necessary text for the badi...
Now you can see the Methods...
Click on a method...Inside you go..there if you cannot see anything on top of the ABAP editor click on the TAB "SIGNATURE"..it shows which fields are importing,exporting,changeable..etc same as in a function module..
eg:activate_tab_page .
Here you give the fields
ef_caption = text-001.
ef_position = 1.
ef_program = 'ZZTEST'.
ef_dynpro = '9000'.
where ZZTEST is your Zprogram and 9000 is a screen created as "subscreen" ( on attributes tab click on radio button "Subscreen" instead of normal screen)
SO save and activate..what happens is that the Program ZZTEST's screen 9000 will be called as asubscreen from a standard program...
In the rest you do data transfers from screen to program and back....._Remember to activate the BADI and its code once you are done coding...._
Please do the same and revert back if you need more help
Reward if useful
Regards
Byju
Maybe you are looking for
-
How to show the processing time taken for a BPEL process in BAM report.
Hi All, I have the data as below in the Data object. I would like to show the time taken for each order to complete in the report. instance Id order Id product Name product Code price status instance Time updaterName 1360
-
Error with calendar date being extracted : PSA - ODS - cubes correction
Hello to all, I have an issue with incorrect calendar date being captured by BW. Here is the analysis: We have red request into the invoice cubes because of incorrect calendar date. It has been found that the process is done via PSA -> ODS -> Cubes
-
Stocktaking and inactive items
Hello Everyone, Like a lot of businesses we have been having problems with the change of treatment of inactive items in SAP B1 8.8, we are now preparing to take stock and have found that whilst the stock audit report will show inactive items readily,
-
How to come bak on Selcton Scrn in case of err while using Gui Download
Hi All, I am using GUI Download function in my report.Now i f the excel to which i am donloading is already open there comes an error message saying 'Access to file is denied' and program is terminated.Is there any way so that after the er
-
Impact of ESS/MSS Business Packages
We are implementing the SAP Portal and therefore will be downloading and installing the ESS/MSS Business Packages. I would appreciate if anyone could tell me if there is any impact on any SAP HR existing functionalities as a result of this. Do we n