ابدأ بالتواصل مع الأشخاص وتبادل معارفك المهنية

أنشئ حسابًا أو سجّل الدخول للانضمام إلى مجتمعك المهني.

متابعة

How to create view in bdc?

user-image
تم إضافة السؤال من قبل Emad Mohammed said abdalla , ERP & IT Software, operation general manager . , AL DOHA Company
تاريخ النشر: 2015/01/11
Vinod Jetley
من قبل Vinod Jetley , Assistant General Manager , State Bank of India

Well here is an example for you to see how the views are dealt with in BDC's...

***************************************************** ****This is a BDC for Semi finished Materials******** report ZBDC_SEMIFIN        no standard page heading line-size255. include bdcrecx1. Tables: Mara,"General Material Data         mard,"Storage Location Data for Material         mvke,"Sales Data for Material         Makt,"Material Descriptions         marc,"Plant Data for Material         mbew,"Material Valuation         rlgrap."Program Fields/Screen Fields for SAPLGRAP Data: begin of ITAB occurs0,"Internal table for Semi-Finished Material *  Initial data       matnr like mara-matnr,  "Material Code       mbrsh like mara-mbrsh,  "Industry Data       mtart like mara-mtart,  "Material Type *  Org Data       Werks like marc-werks,  "Plant       lgort like mard-lgort,  "Storage Location       vkorg like mvke-vkorg,  "Sales Orgnization       vtweg like mvke-vtweg,  "Distribution Chanel *  Basic1       Maktx Like makt-maktx,  "Description       meins like mara-meins,  "Uom       matkl like mara-matkl,  "Material Group       BISMT LIKE MARA-BISMT, " Old Material Number       spart like mara-spart,  "Division       brgew(7),"like mara-brgew,  "Gross Weight       gewei like MARA-GEWEI,  "Weight Unit       ntgew(7)," like mara-ntgew,  "Net Weight * Purchasing        MAKTL LIKE MARA-MATKL, "Material Group        ekwsl like MARA-EKWSL, " Purchasing Value Key        ekgrp like MARC-EKGRP, " Purchasing Group *  Mrp1       disgr like MARC-DISGR,  "Mrp Group *     ekgrp like MARC-EKGRP,  "Purchasing group       dismm like MARC-DISMM,  "Mrp Type       dispo like MARC-DISPO,  "Mrp Controller       disls like MARC-DISLS,  "Lot Size        BSTMI like MARC-BSTMI,       BSTMA like MARC-BSTMA,       BSTRF like MARC-BSTRF,       BSTFE like MARC-BSTFE, *  Mrp2       beskz like MARC-BESKZ,  "Procurement type       lgpro like MARC-LGPRO,  "Production Storage Location       dzeit(3),"like MARC-DZEIT,  "In house Production time       plifz(3),"like MARC-PLIFZ,  "Planned delivery time       fhori(3),"like MARC-FHORI,  "Sched margin key       eisbe like MARC-EISBE,  "Safety stock *  Mrp3       PERKZ LIKE MARC-PERKZ,       vrmod like MARC-VRMOD,  "Consumption mode       vint1(3)," like MARC-VINT1,  "Backward Consumption period       vint2(3),"like MARC-VINT2,  "Forward Consumption period       mtvfp like MARC-MTVFP,  "Availability Check *  Mrp4       sbdkz like MARC-SBDKZ,  "Individual/ Collective       SAUFT like MARC-SAUFT,  "Repetitive Manufacturing       SFEPR like MARC-SFEPR,  "REM Profile *  Work Scheduling View       ausme like MARC-AUSME,  "Unit of issue       FEVOR LIKE MARC-FEVOR, "Production Scheduler       SFCPF like MARC-SFCPF, "Production Scheduler Profile       umren(5)," like RMMZU-UMREN,  "Val for base uom       umrez(5) ,"like RMMZU-UMREz,  "Value for uo issue * Accounting1       bklas like MBEW-BKLAS,  "Valuation Class       vprsv like MBEW-VPRSV,  "Price Control Indicator       verpr(7)," like MBEW-VERPR,  "Value/Price       STPRS like MBEW-STPRS, *COSTING      EKALR LIKE MBEW-EKALR," With qty str      LOSGR like MARC-LOSGR, " Costing Lot size     end of ITAB. ********************************************************** Data: W_record type  I,  "Record Allready exists.       w_trecord type I. "Total record processed start-of-selection. perform upload.        "Upload Data from Text File Perform Open_group.    "Create a session clear : w_record,w_trecord. perform semi. "Create Semi Finish Materials if w_trecord gt0 or w_record gt0.   perform batch_job. endif. perform close_group.   "Close session FORM SEMI. loop at ITAB. *   Check for material in master  *************************       select single * from mara where matnr eq ITAB-matnr.          if sy-subrc ne0.           w_trecord = w_trecord +1. *Initial Screen perform bdc_dynpro      using 'SAPLMGMM' '0060'. perform bdc_field       using 'BDC_CURSOR'                               'RMMG1-MTART'. perform bdc_field       using 'BDC_OKCODE'                               '=AUSW'. perform bdc_field       using 'RMMG1-MATNR'                               ITAB-MATNR. perform bdc_field       using 'RMMG1-MBRSH'                               'M'. perform bdc_field       using 'RMMG1-MTART'                               'HALB'. ***********************Views********************************** *Select Views perform bdc_dynpro      using 'SAPLMGMM' '0070'. perform bdc_field       using 'BDC_CURSOR'                               'MSICHTAUSW-DYTXT(17'. perform bdc_field       using 'BDC_OKCODE'                               '/00'. perform bdc_field       using 'MSICHTAUSW-KZSEL(01)'                                'X'. perform bdc_field       using 'MSICHTAUSW-KZSEL(09)'                               'X'. perform bdc_field       using 'MSICHTAUSW-KZSEL(12)'                               'X'. perform bdc_field       using 'MSICHTAUSW-KZSEL(13)'                               'X'. perform bdc_field       using 'MSICHTAUSW-KZSEL(14)'                               'X'. perform bdc_field       using 'MSICHTAUSW-KZSEL(15)'                               'X'.. perform bdc_field       using 'MSICHTAUSW-KZSEL(17)'                               'X'. ***********************Views********************************** *perform bdc_dynpro      using 'SAPLMGMM' '0070'. *perform bdc_field       using 'BDC_CURSOR' *                              'MSICHTAUSW-DYTXT(01)'. *perform bdc_field       using 'BDC_OKCODE' *                              '/00'. *perform bdc_dynpro      using 'SAPLMGMM' '0070'. *perform bdc_field       using 'BDC_CURSOR' *                              'MSICHTAUSW-DYTXT(17)'. *perform bdc_field       using 'BDC_OKCODE' *                              '/00'. *perform bdc_field       using 'MSICHTAUSW-KZSEL(17)' *                              ITAB-KZSEL_17_011. *perform bdc_dynpro      using 'SAPLMGMM' '0070'. *perform bdc_field       using 'BDC_CURSOR' *                              'MSICHTAUSW-DYTXT(01)'. *perform bdc_field       using 'BDC_OKCODE' *                              '/00'. *perform bdc_dynpro      using 'SAPLMGMM' '0070'. *perform bdc_field       using 'BDC_CURSOR' *                              'MSICHTAUSW-DYTXT(13)'. *perform bdc_field       using 'BDC_OKCODE' *                              '=ENTR'. *perform bdc_field       using 'MSICHTAUSW-KZSEL(13)' *                              ITAB-KZSEL_13_012. *Org Data perform bdc_dynpro      using 'SAPLMGMM' '0080'. perform bdc_field       using 'BDC_CURSOR'                               'RMMG1-LGORT'. perform bdc_field       using 'BDC_OKCODE'                               '=ENTR'. perform bdc_field       using 'RMMG1-WERKS'                               ITAB-WERKS. perform bdc_field       using 'RMMG1-LGORT'                               ITAB-LGORT. *Basic1 perform bdc_dynpro      using 'SAPLMGMM' '4004'. perform bdc_field       using 'BDC_OKCODE'                               '=SP09'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'MARA-MEINS'                               ITAB-MEINS. perform bdc_field       using 'MARA-MATKL'                               ITAB-MATKL. perform bdc_field       using 'MARA-BISMT'                               ITAB-BISMT. perform bdc_field       using 'MARA-SPART'                               ITAB-SPART. perform bdc_field       using 'MARA-MTPOS_MARA'                               'NORM'. perform bdc_field       using 'BDC_CURSOR'                               'MARA-NTGEW'. perform bdc_field       using 'MARA-BRGEW'                               ITAB-BRGEW. perform bdc_field       using 'MARA-GEWEI'                               ITAB-GEWEI. perform bdc_field       using 'MARA-NTGEW'                               ITAB-NTGEW. *Purchasing perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=SP12'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'MARA-MEINS'                               ITAB-MEINS. perform bdc_field       using 'MARC-EKGRP'                               ITAB-EKGRP. perform bdc_field       using 'MARA-MATKL'                               ITAB-MATKL. perform bdc_field       using 'BDC_CURSOR'                               'MARA-EKWSL'. perform bdc_field       using 'MARA-EKWSL'                               ITAB-EKWSL. *MRP1 perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=SP13'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'MARA-MEINS'                               ITAB-MEINS. perform bdc_field       using 'MARC-EKGRP'                               ITAB-EKGRP. perform bdc_field       using 'MARC-DISMM'                               ITAB-DISMM. perform bdc_field       using 'MARC-DISPO'                               ITAB-DISPO. perform bdc_field       using 'BDC_CURSOR'                               'MARC-DISLS'. perform bdc_field       using 'MARC-DISLS'                               ITAB-DISLS. IF ITAB-DISLS EQ 'EX'   . perform bdc_field       using 'MARC-BSTMI'                               ITAB-BSTMI."MIN LOT SIZE perform bdc_field       using 'MARC-BSTMA'                               ITAB-BSTMA."MAX LOT SIZE perform bdc_field       using 'MARC-BSTRF'                               ITAB-BSTRF."RNDING ELSEIF ITAB-DISLS EQ 'FX'. perform bdc_field       using 'MARC-BSTFE'                               ITAB-BSTFE. ENDIF. *MRP2 perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=SP14'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'MARC-BESKZ'                               ITAB-BESKZ. perform bdc_field       using 'MARC-LGPRO'                               ITAB-LGPRO. perform bdc_field       using 'MARC-DZEIT'                               ITAB-DZEIT. perform bdc_field       using 'MARC-PLIFZ'                               ITAB-PLIFZ. perform bdc_field       using 'MARC-FHORI'                               ITAB-FHORI. perform bdc_field       using 'BDC_CURSOR'                               'MARC-EISBE'. perform bdc_field       using 'MARC-EISBE'                               ITAB-EISBE. *MRP3 perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=SP15'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'MARC-PERKZ'                               ITAB-PERKZ. perform bdc_field       using 'MARC-VRMOD'                               ITAB-VRMOD. perform bdc_field       using 'MARC-VINT1'                               ITAB-VINT1. perform bdc_field       using 'MARC-VINT2'                               ITAB-VINT2. perform bdc_field       using 'BDC_CURSOR'                               'MARC-MTVFP'. perform bdc_field       using 'MARC-MTVFP'                               ITAB-MTVFP. *MRP4 perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=SP17'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'MARC-SBDKZ'                               ITAB-SBDKZ. perform bdc_field       using 'BDC_CURSOR'                               'MARC-SFEPR'. perform bdc_field       using 'MARC-SAUFT'                               ITAB-SAUFT. perform bdc_field       using 'MARC-SFEPR'                               ITAB-SFEPR. *Work Scheduling perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=SP24'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'BDC_CURSOR'                               'MARC-SFCPF'. perform bdc_field       using 'MARA-MEINS'                               ITAB-MEINS. perform bdc_field       using 'MARC-FEVOR'                               ITAB-FEVOR. perform bdc_field       using 'MARC-LGPRO'                               ITAB-LGPRO. perform bdc_field       using 'MARC-SFCPF'                               ITAB-SFCPF. perform bdc_field       using 'MARC-DZEIT'                               ITAB-DZEIT. *Check for Conversation Factor           if ITAB-MEINS ne iTAB-ausme and iTAB-umren gt 0                                       and iTAB-umrez gt 0.           perform bdc_dynpro      using 'SAPLMGMM' '0510'.           perform bdc_field       using:                                   'BDC_OKCODE'    '=ENTR',                                   'RMMZU-UMREN'   ITAB-UMREN,                                   'RMMZU-UMREZ'   ITAB-UMREZ.         endif. perform bdc_field       using 'MARC-LGPRO'                               itab-LGPRO. perform bdc_field       using 'MARC-DZEIT'                               itab-DZEIT. *Accounting perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=SP26'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'MARA-MEINS'                               ITAB-MEINS. perform bdc_field       using 'MARA-SPART'                               ITAB-SPART. perform bdc_field       using 'BDC_CURSOR'                               'MBEW-STPRS'. perform bdc_field       using 'MBEW-BKLAS'                               ITAB-BKLAS. perform bdc_field       using 'MBEW-VPRSV'                               ITAB-VPRSV. perform bdc_field       using 'MBEW-STPRS'                               ITAB-STPRS. IF ITAB-VPRSV = 'S'. perform bdc_field       using 'MBEW-STPRS' "FILLS STD PRICE                               ITAB-VERPR. ELSEIF ITAB-VPRSV ='V'. perform bdc_field       using 'MBEW-VERPR' "FILLS VALUE                               ITAB-VERPR. ENDIF. *Cost Estimate perform bdc_dynpro      using 'SAPLMGMM' '4000'. perform bdc_field       using 'BDC_OKCODE'                               '=BU'. perform bdc_field       using 'MAKT-MAKTX'                               ITAB-MAKTX. perform bdc_field       using 'BDC_CURSOR'                               'MARC-PRCTR'. perform bdc_field       using 'MARA-MEINS'                               ITAB-MEINS. perform bdc_field       using 'MBEW-EKALR'                               ITAB-EKALR. perform bdc_field       using 'MARC-LOSGR'                               ITAB-LOSGR. perform bdc_transaction using 'MM01'. REFRESH BDCDATA. *  *************************************************************     else.          w_record = w_record +1.     endif. ENDLOOP. ENDFORM. form Upload. CALL FUNCTION 'UPLOAD'  EXPORTING    CODEPAGE                      = ' '    FILENAME                      = ' '    FILETYPE                      = ' '   TABLES     DATA_TAB                      = ITAB  EXCEPTIONS    CONVERSION_ERROR              =1    INVALID_TABLE_WIDTH           =2    INVALID_TYPE                  =3    NO_BATCH                      =4    UNKNOWN_ERROR                 =5    GUI_REFUSE_FILETRANSFER       =6    OTHERS                        =7. ENDFORM. form batch_job.     uline.       format color col_heading.         if w_trecord gt0.         Write:/ 'Background Job has been Created for ',               w_trecord right-justified, 'Semi-Fin',80 ''.         write:/ 'Please follow the following steps to run this job',                                                           80 ''.         write:/ 'as listed below.',80 ''.         format color col_normal.         skip.         write:/05 '1.Goto Transaction SM35',80 ''.         write:/05 '2.Select your Session Name',80 ''.         write:/05 '3.Click On Execute Button',80 ''.        endif.        if w_record gt0.          format color col_negative.          write:/ w_record ,'records already existed',80 ''.          format color off.        endif.     uline. endform.

المزيد من الأسئلة المماثلة

هل تحتاج لمساعدة في كتابة سيرة ذاتية تحتوي على الكلمات الدلالية التي يبحث عنها أصحاب العمل؟