How to reprint a production order?

When I tried to reprint a production order, I got an error "Reprint order is not allowed". What should I need to do to make enable reprint?
Thanks!

Yes, I have tried to figure out what happen using the transaction analysis in the business process tab.
But I got....
Transaction  Reprint order
Reprint order not allowed by an active status
Error Message
E: BS 002  "Reprint order" is not allowed
I got no information which active status blocked the reprint process.
I have also looked into the setting of each active status
REL: RMND is not maintained in the transaction control
MSPT: RMND is set to no influence on business transaction
PCNF: RMND is not maintained in the transaction control
PRC: RMND is set to no influence on business transaction
BCRQ: RMND is set to no influence on business transaction
GMPS: RMND is set to no influence on business transaction
SETC: RMND is set to no influence on business transaction
Seems that...no active status has a setting which block reprinting the order.

Similar Messages

  • How to get open production orders by plant wise

    Hi,
    How to get open production orders by plant wise.
    i know from tcode COOIS, is it possible to get from this. if so what are the parameters we have to give to get open production orders by plant wise.
    is there any tcode or tables available , please provide details .
    regards,
    Hari priya

    Hi,
    What is your definition of Open Production Orders?
    Definetly you will get the report from COOIS for Plant wise.
    Whther you want to consider all the Orders having the Status REL but not DLV?
    Then there is a chance of having the Orders, still with PDLV status but GR is done for the full Qty. May be you don't want to consider the TECO status, eventhough the Order is short closed??
    Better to ommit the Orders with CRTD status also..
    So, based on this which status to consider and which status not to consider..
    You can define the "Selection profile status" in BS42.
    Use this selection profile in COOIS, so that the rsults will be accurate..
    Best Regards,
    Siva

  • How can mass creating production orders???

    In SAP ,we can use CO01,CO09,CO07 to create production order. But by these TOCDES,we only can create one production order for one finished product once a time.
    But we now need to create more then one ,may be more then 50 production orders once a time?
    It is possible in SAP?
    I know we could conver the production orders from plan orders after MRP run.But sometimes
    for some reasons we must create produciton orders manually.And I also know in SAP some TCODE can process many production orders once a time ,like COHV,CORM, can release ,TECO many production orders once a time.
    But how can mass creating production orders once a time,not by mrp run?
    How can batch create produciton orders in SAP?
    Thanks for any reply!

    Hi,
    Use the BAPI - BAPI_PRODORD_CREATE or for internal orders BAPI_INTERNALORDER_CREATE
    Take the help of your abaper, he / she can use the above BAPI to write a custom program to mass create production order.
    Hope the above helps.
    Regards,
    Vivek
    Added
    You can also use the below BAPI's in your custom program:
    BAPI_PRODORD_RELEASE to release the orders
    BAPI_PRODORD_CHECK_MAT_AVAIL for carrying out material availability
    Edited by: Vivek on Mar 22, 2009 8:27 PM

  • How get all released production orders

    Hi experts,
    I need to get all released Production Orders for a specific plant. I noticed that usually you don´t select directly from table AUFK. Most of people use function module WCFS_STTXT_GET to get the status of an order. I know that table AUFK has fields ASTNR (status) and PHAS1 (released) however those fields don't reflect the status of an order (thatu2019s why WCFS_STTXT_GET is used).
    Also, I know that table JEST contains status for an order; however, for a simple order that table shows more than one status (I guess is like a history of all status the order had).
    So my question is: How can I get all released orders for an specific plant? If I use WCFS_STTXT_GET I would have to select all orders and check the status one by one, which is obviously not efficient at all.
    Thanks!

    Hi Carlos,
       As far as i know, it is not possible to get the latest status on a production order. if we see a production order in CO03, we see that all the status' are displayed on the order which it has been through.
    I remember we had to include the system status logic similar to the transaction COHV, and we had used the table JEST for the same.
    Kindly update the solution if you find any.
    Thanks.

  • How to delete the production order in mass?

    Dear Experts
                 Please tell me how to delete the  old production orders?

    Raja,
    CO78 is a one stop transaction for production order setting deletion flag, deletion indicator, archiving and finally deleting.
    Generally we schedule the following programs in background in the sequence below,
    1. PPARCHP1 for Setting Deletion Flag
    2. PPARCHP1 for Setting Deletion Indicator (Once set cannot be revoked- so care should be taken in selection of orders)
    3. PPARCHA1 for archiving the production order with Deletion Indicator active. Basis should set the database/storage space for archiving/storing the records.
    4. PPARCHD1 for Deleting the records from SAP database.
    Regards,
    Prasobh

  • How track changes in production order which is already Read PP master data

    Hi Gurus,
    Due to some unavoidable reason my client has to do Read PP master data time and again, now my client having a requirement that want to see what has been changes in Production Order.
    We already created 1 report for that which tracks whatever has been changed in Production Order but having a constraint in it.  That It could not be able to distinguish to which order READ PP MASTER DATA done.
    So my query is how to map that in report. As sytem Status directly changed to CRTD phase.
    Any table which can track the changes once the order been through with READ PP MASTER DATA?
    As there are huge number of Production Order so we can go and open each order to see the Status changes in each and every order.
    Hope to get a reply soon.
    Regards,
    Sap User

    Hi,
    A suggestion:
    Change the specification as, log changes at each save instead of Read PP Master Data, as the changes would become effective only upon save. So if this is acceptable then 2 options, 1. Go with OCM feature or 2. Refer note - 390635
    Revert if you face any issues.
    Regards,
    Vivek

  • How to Upload WIP Production orders in production during Cutover.

    How to Upload the Open Production orders in production system during cutover activities.
    my client is having 1000 open production order(WIP), during cutover activies how to upload this in production.
    Please guide me
    Regards
    Sunil Patil.

    Hi,
    I somewhat agree with what Raj has to say. Something which is already in process how can that be uploaded, how can one compensate for the time which has been consumed in the production activity.
    I hope Rupesh Brahamakar sir would throw light on this issue, as most of us are under the dillema at the time of Cut-Over activity.
    Sir, hoping your valueable inputs.
    Regards,
    Harris

  • How to delete  Open Production Orders

    Hi,
    I would like to Delete Open Production Orders.plz tell me How to delete  Open Production Orders

    Hi
    for deleting POs you have to delete the line items. First select the line items and then choose the icon 'delete' in the item overview screen of PO.
    For open PO s also you have to do the same Or else change the PO quantity to the desired qty for what GRN has been made.
    Regards
    Siva

  • How to settle the production order variance to 3 GL account

    dear all
    i met a problem in the project ,the customer need see the production order variance category detail for (material,routine,overhead variance) in FI report ,so it need to settle the variance to at least 3 GL account
    i don't know how to configure it ,i try to use result analyse like wip ,but go failed
    do you have some suggestion
    thank you

    Hi ,
    Through Standard SAP .. the same it not possible . Standard SAP will post the differences to one GL account ..The variance amount is not segregated..
    The way out is to use report KKO0  .( Product Costing Drill Down Reports  )  in CO . There are many reports available .. and you can compute the difference in CO Reports and manually make an entry in FI by manually reversing the original variance account and posting it to cost component wise variance accounts ..
    To use the KKO0 report.. please perform the following tasks :-
    1. Assign cost component structure in transaction OKN0 ( Date Extraction/Product Drill Down) tab.
    2.  Product Group Type = Material group..
    3. Run KKRV after period end every month to collect the data for drill down reporting..
    Please revert back for any further clarifications
    Regards
    Sarada
    Sarada

  • How to get Initial Production Order Qty?

    Hi Gurus,
    I need to stage initial production order quantity in BW. How can i do that? Is there any change record management or table in R/3 from which I can get the Initial Productin order qty?
    Regards,
    Gaurav

    Hi !
    I was having a look at "2LIS_04_P_MATNR", 
    The underlyning tables for this are AFPO and AFKO.
    We have a field "PSMNG" - Item Quantity Order. I think corresponds to your requirment ....
    Also, have a look at the folowing link ..
    http://help.sap.com/saphelp_nw70/helpdata/EN/88/7fc73c0c52085be10000000a114084/frameset.htm
    Hope it helps !
    Please update me if it works for you !
    Award points if it is helpful.
    Regards
    Anshul

  • How to create Disassembly production order type.

    Dear All,
    I've been reading threads regarding disassemblyi type production order usage, but in my system (SAP ECC 6.0) i don't have an option to select this type of order.
    So the question is how to create this disassembly type for production order, what other settiings are needed for disassembly processing. And could you pls shortly describe best practise for disassembly processing.
    Thanks in advance,
    Regards, Andrey
    Edited by: Andrey Kruglov on Jul 15, 2010 3:45 PM

    Hello
    Such functionality does not exist on the standard system, however, there is a functionality called Order Combination for the industry solution DIMP.
    Please take a look on the following document, which describes the order combination scenario:
    https://help.sap.com/bp_fm603/BBLibrary/HTML/372_EN_FR.htm
    BR
    Caetano

  • How create a new production order by C++ code?

    Hi everybady
    I'm trying to create new production orders using a VC++ 6.0,
    but as i can't put a new DocumentNumber "It's Read only",
    i can't add a new orders. show me sample code  plz....
    help me....
    Thanks

    Hello
    Docnum will be avaiable when you issed the Production order.
    The method on each langugage is the same so hereby i am posting a VB.NET Code,and you can convert it.
    The mandartory fields:
    ItemCode - you would like to produce
    Qty - how many you would like to producce
    After you issued the Production order, you must change the Status from planned to Released
    of course, you can add more properties.....
    Dim oPO As SAPbobsCOM.ProductionOrders = oCompany.GetBusinessObject(BoObjectTypes.oProductionOrders)
            oPO.ItemNo = "ITEMCODE"
            oPO.PlannedQuantity = "QTY TO BE CREATED"
            oPO.PostingDate = Today.Date
            oPO.ProductionOrderType = BoProductionOrderTypeEnum.bopotStandard
            If oPO.Add <> 0 Then
                Dim POENTRY As String = oCompany.GetNewObjectKey()
                If oPO.GetByKey(CInt(POENTRY)) Then
                    oPO.ProductionOrderStatus = BoProductionOrderStatusEnum.boposReleased
                    ' Here you have a docnum like OPO.DocNum '
                    If oPO.Update() <> 0 Then
                        sbo_application.MessageBox(oCompany.GetLastErrorDescription)
                        Exit Sub
                    End If
                End If
            End If
    Regards
    János

  • How to get all production orders for a workcenter

    Hello ...
    I have a requirement to create a report of all production orders for a given workcenter.  The user enters the workcenter (CRHD-ARBPL), plant (CRHD-WERKS) and a date range, and wants to see a list of orders (AUFNR) that fall within that date range along with some other data from AFKO and AFPO. 
    I can't figure out a good, consistent way to get from workcenter to production orders.
    Any ideas?
    Thanks!
    Sharon

    Hi there check this program for relation between SO PO and Production order
    REPORT z_so_info.
    TABLES: vbak, vbap, afko, afpo.
    *Field catalog
    TYPE-POOLS: slis.
    DATA: lv_repid TYPE sy-repid VALUE sy-repid,
    xfield TYPE slis_t_fieldcat_alv,
    afield TYPE slis_fieldcat_alv.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(25) text-002.
    SELECT-OPTIONS: so_so FOR vbak-vbeln OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-003.
    PARAMETERS:
    p_kunnr LIKE vbak-kunnr, " sold-to
    p_kunwe LIKE vbak-kunnr. " ship-to
    SELECTION-SCREEN END OF BLOCK b2.
    *Constants
    CONSTANTS: c_zor TYPE vbak-auart VALUE 'ZOR',
    c_we TYPE vbpa-parvw VALUE 'WE',
    c_ag TYPE vbpa-parvw VALUE 'AG'.
    * c_space TYPE space.
    *Ranges
    RANGES: ra_parvw FOR vbpa-parvw,
    ra_kunnr FOR vbpa-kunnr.
    *Tables
    DATA: BEGIN OF gt_output OCCURS 0,
    vbeln LIKE vbak-vbeln, " sales order number
    posnr LIKE vbap-posnr, " SO item number
    matnr LIKE vbap-matnr, " material number
    sh LIKE vbpa-kunnr, " Ship-to
    sp LIKE vbpa-kunnr, " Sold-to
    lifnr LIKE ekko-lifnr, " Vendor
    bstnk LIKE vbak-bstnk, " PO number
    banfn LIKE vbep-banfn, " Purchase requi
    po_st TYPE char30, " PO status text
    pstyv TYPE vbap-pstyv, " Item catagory
    aufnr LIKE afpo-aufnr, " Production Order
    prd_stat TYPE string, " Prd order status
    END OF gt_output.
    DATA: wa_output LIKE gt_output.
    FIELD-SYMBOLS: <fs_output> LIKE gt_output.
    *Table for sales order and PO
    TYPES : BEGIN OF gs_data,
    vbeln TYPE vbak-vbeln,
    posnr TYPE vbap-posnr,
    pstyv TYPE vbap-pstyv,
    matnr TYPE vbap-matnr,
    END OF gs_data.
    DATA: gt_data TYPE STANDARD TABLE OF gs_data,
    wa_data TYPE gs_data.
    *Table for Production Orders
    TYPES: BEGIN OF gs_prd,
    aufnr TYPE afpo-aufnr,
    posnr TYPE afpo-posnr,
    kdauf TYPE afpo-kdauf,
    kdpos TYPE afpo-kdpos,
    wepos TYPE afpo-wepos, "Goods Receipt Indicator
    elikz TYPE afpo-elikz, "Delivery Completed Indicator
    objnr TYPE aufk-objnr, "Object number
    * getri TYPE afko-getri, "Confirmed Order Finish Date
    * gltri TYPE afko-gltri, "Actual finish date
    END OF gs_prd.
    DATA: gt_prd TYPE STANDARD TABLE OF gs_prd,
    wa_prd TYPE gs_prd.
    *Table for partner data
    TYPES: BEGIN OF gs_partner,
    vbeln TYPE vbak-vbeln,
    posnr TYPE vbap-posnr,
    parvw TYPE vbpa-parvw,
    kunnr TYPE vbpa-kunnr,
    END OF gs_partner.
    DATA: gt_partner TYPE STANDARD TABLE OF gs_partner,
    wa_partner TYPE gs_partner.
    TYPES: BEGIN OF gs_po,
    ebeln TYPE ekkn-ebeln,
    ebelp TYPE ekkn-ebelp,
    vbeln TYPE ekkn-vbeln,
    vbelp TYPE ekkn-vbelp,
    END OF gs_po.
    DATA: gt_po TYPE STANDARD TABLE OF gs_po,
    wa_po TYPE gs_po.
    TYPES: BEGIN OF gs_preq,
    vbeln TYPE vbep-vbeln,
    posnr TYPE vbep-posnr,
    banfn TYPE vbep-banfn,
    END OF gs_preq.
    DATA: gt_preq TYPE STANDARD TABLE OF gs_preq,
    wa_preq TYPE gs_preq.
    TYPES: BEGIN OF gs_po_stat,
    ebeln TYPE ekko-ebeln,
    procstat TYPE ekko-procstat,
    lifnr TYPE ekko-lifnr,
    END OF gs_po_stat.
    DATA: gt_po_stat TYPE STANDARD TABLE OF gs_po_stat,
    wa_po_stat TYPE gs_po_stat.
    *Field symbols
    FIELD-SYMBOLS: <fs> TYPE tj02t-txt04,
    <fs_temp> TYPE tj02t-txt04,
    <fs_stat> TYPE char30.
    START-OF-SELECTION.
    PERFORM fr_build_range.
    PERFORM fr_get_data.
    PERFORM fr_build_fc.
    PERFORM fr_output.
    *& Form fr_get_data
    * text
    * --> p1 text
    * <-- p2 text
    FORM fr_get_data.
    *Get SO
    SELECT a~vbeln a~posnr a~pstyv a~matnr
    FROM vbap AS a
    JOIN vbak AS b
    ON a~vbeln = b~vbeln
    JOIN vbpa AS c
    ON b~vbeln = c~vbeln
    INTO TABLE gt_data
    WHERE b~vbeln IN so_so
    AND b~auart EQ c_zor "Only Sales Orders
    AND c~kunnr IN ra_kunnr. "from selection screen
    DELETE ADJACENT DUPLICATES FROM gt_data COMPARING vbeln posnr.
    *get data of the production order
    IF NOT gt_data[] IS INITIAL.
    SELECT a~aufnr a~posnr a~kdauf a~kdpos a~wepos a~elikz
    b~objnr
    FROM afpo AS a
    JOIN aufk AS b
    ON a~aufnr = b~aufnr
    INTO TABLE gt_prd
    FOR ALL ENTRIES IN gt_data
    WHERE a~kdauf EQ gt_data-vbeln
    AND a~kdpos EQ gt_data-posnr.
    ENDIF.
    *Get partner data
    IF NOT gt_data[] IS INITIAL.
    SELECT vbeln posnr parvw kunnr
    FROM vbpa
    INTO TABLE gt_partner
    FOR ALL ENTRIES IN gt_data
    WHERE vbeln EQ gt_data-vbeln.
    ENDIF.
    *Get Purchase Order
    IF NOT gt_data[] IS INITIAL.
    SELECT ebeln ebelp vbeln vbelp
    FROM ekkn
    INTO TABLE gt_po
    FOR ALL ENTRIES IN gt_data
    WHERE vbeln EQ gt_data-vbeln
    AND vbelp EQ gt_data-posnr.
    SELECT vbeln posnr banfn
    FROM vbep
    INTO TABLE gt_preq
    FOR ALL ENTRIES IN gt_data
    WHERE vbeln EQ gt_data-vbeln
    AND posnr EQ gt_data-posnr.
    ENDIF.
    IF NOT gt_po[] IS INITIAL.
    SELECT a~ebeln a~procstat a~lifnr
    FROM ekko AS a
    JOIN ekpo AS b
    ON a~ebeln = b~ebeln
    INTO TABLE gt_po_stat
    FOR ALL ENTRIES IN gt_po
    WHERE b~ebeln EQ gt_po-ebeln
    AND b~ebelp EQ gt_po-ebelp.
    ENDIF.
    *Move data to output table
    LOOP AT gt_data INTO wa_data.
    wa_output-vbeln = wa_data-vbeln.
    wa_output-posnr = wa_data-posnr.
    wa_output-pstyv = wa_data-pstyv.
    wa_output-matnr = wa_data-matnr.
    READ TABLE gt_po INTO wa_po WITH KEY vbeln = wa_data-vbeln
    vbelp = wa_data-posnr.
    IF sy-subrc EQ 0.
    wa_output-bstnk = wa_po-ebeln.
    READ TABLE gt_po_stat INTO wa_po_stat WITH KEY ebeln = wa_po-ebeln.
    IF sy-subrc EQ 0.
    wa_output-lifnr = wa_po_stat-lifnr.
    CASE wa_po_stat-procstat.
    WHEN '01'.
    wa_output-po_st = 'Version in process'.
    WHEN '02'.
    wa_output-po_st = 'Active'.
    WHEN '03'.
    wa_output-po_st = 'In release'.
    WHEN '04'.
    wa_output-po_st = 'Partially released'.
    WHEN '05'.
    wa_output-po_st = 'Released Completely'.
    WHEN '08'.
    wa_output-po_st = 'Rejected'.
    ENDCASE.
    ENDIF. "inner read subrc
    ENDIF. "outer read subrc
    READ TABLE gt_preq INTO wa_preq WITH KEY vbeln = wa_data-vbeln
    posnr = wa_data-posnr.
    IF sy-subrc EQ 0.
    wa_output-banfn = wa_preq-banfn.
    ENDIF.
    READ TABLE gt_prd INTO wa_prd WITH KEY kdauf = wa_data-vbeln
    kdpos = wa_data-posnr.
    IF sy-subrc EQ 0.
    wa_output-aufnr = wa_prd-aufnr.
    *get the purchase requisition for production order as well
    SELECT SINGLE banfn
    FROM ebkn
    INTO wa_output-banfn
    WHERE aufnr EQ wa_prd-aufnr.
    *Get the status of the production order
    PERFORM fr_get_prd_stat USING wa_prd-objnr
    CHANGING wa_output-prd_stat.
    ENDIF. " sy-subrc
    READ TABLE gt_partner INTO wa_partner WITH KEY vbeln = wa_data-vbeln
    parvw = c_we.
    IF sy-subrc EQ 0.
    wa_output-sh = wa_partner-kunnr.
    ENDIF.
    READ TABLE gt_partner INTO wa_partner WITH KEY vbeln = wa_data-vbeln
    parvw = c_ag.
    IF sy-subrc EQ 0.
    wa_output-sp = wa_partner-kunnr.
    ENDIF.
    APPEND wa_output TO gt_output.
    CLEAR: wa_data, wa_prd,wa_partner,wa_output.
    ENDLOOP.
    ENDFORM. " fr_get_data
    *& Form fr_build_range
    * text
    * --> p1 text
    * <-- p2 text
    FORM fr_build_range .
    *Range for partner function
    MOVE 'I' TO ra_parvw-sign.
    MOVE 'EQ' TO ra_parvw-option.
    MOVE 'SH' TO ra_parvw-low. " we
    APPEND ra_parvw.
    CLEAR ra_parvw.
    MOVE 'I' TO ra_parvw-sign.
    MOVE 'EQ' TO ra_parvw-option.
    MOVE 'SP' TO ra_parvw-low. " ag
    APPEND ra_parvw.
    CLEAR ra_parvw.
    *Range for ship-to and sold-to
    MOVE 'I' TO ra_kunnr-sign.
    MOVE 'EQ' TO ra_kunnr-option.
    MOVE p_kunnr TO ra_kunnr-low.
    APPEND ra_kunnr.
    CLEAR ra_kunnr.
    MOVE 'I' TO ra_kunnr-sign.
    MOVE 'EQ' TO ra_kunnr-option.
    MOVE p_kunwe TO ra_kunnr-low.
    APPEND ra_kunnr.
    CLEAR ra_kunnr.
    ENDFORM. " fr_build_range
    *& Form fr_build_fc
    * text
    * --> p1 text
    * <-- p2 text
    FORM fr_build_fc .
    * sales order number
    afield-fieldname = 'VBELN'.
    afield-seltext_s = 'Sales #'.
    afield-ref_tabname = 'VBAK'.
    APPEND afield TO xfield. CLEAR afield.
    * sales ITEM number
    afield-fieldname = 'POSNR'.
    afield-seltext_s = 'Item #'.
    afield-ref_tabname = 'VBAP'.
    APPEND afield TO xfield. CLEAR afield.
    * Material Number
    afield-fieldname = 'MATNR'.
    afield-seltext_s = 'Material #'.
    afield-ref_tabname = 'VBAP'.
    afield-outputlen = 10.
    APPEND afield TO xfield. CLEAR afield.
    *Vendor Number
    afield-fieldname = 'LIFNR'.
    afield-seltext_s = 'Vendor Num.'.
    afield-ref_tabname = 'EKKO'.
    APPEND afield TO xfield. CLEAR afield.
    * ship-to-party
    afield-fieldname = 'SH'.
    afield-seltext_s = 'Ship-to'.
    afield-ref_tabname = 'VBPA'.
    APPEND afield TO xfield. CLEAR afield.
    * sold-to-party
    afield-fieldname = 'SP'.
    afield-seltext_s = 'Sold-to'.
    afield-ref_tabname = 'VBPA'.
    APPEND afield TO xfield. CLEAR afield.
    *PO number
    afield-fieldname = 'BSTNK'.
    afield-seltext_s = 'PO NUM'.
    afield-ref_tabname = 'EKKO'.
    APPEND afield TO xfield. CLEAR afield.
    *PO status
    * afield-fieldname = 'PO_STAT'.
    * afield-seltext_s = 'Step'.
    * afield-ref_tabname = 'zbacklog_v2'.
    * APPEND afield TO xfield. CLEAR afield.
    *PO step status
    afield-fieldname = 'PO_ST'.
    afield-seltext_s = 'PO.Status'.
    afield-ref_tabname = 'zbacklog_v2'.
    APPEND afield TO xfield. CLEAR afield.
    *Purchase requisition
    afield-fieldname = 'BANFN'.
    afield-seltext_s = 'Pur. Req.'.
    afield-ref_tabname = 'VBEP'.
    APPEND afield TO xfield. CLEAR afield.
    *Item catagory
    afield-fieldname = 'PSTYV'.
    afield-seltext_s = 'Itm. Catg'.
    afield-ref_tabname = 'VBAP'.
    APPEND afield TO xfield. CLEAR afield.
    *Prodcution Order number
    afield-fieldname = 'AUFNR'.
    afield-seltext_m = 'Prod.Order'.
    afield-ref_tabname = 'AFKO'.
    APPEND afield TO xfield. CLEAR afield.
    *PRODCUTION status
    afield-fieldname = 'PRD_STAT'.
    afield-seltext_s = 'Prd. Step'.
    afield-ref_tabname = 'zbacklog_v2'.
    afield-outputlen = 20.
    APPEND afield TO xfield. CLEAR afield.
    *PRODUCTION step status
    * afield-fieldname = 'PRD_ST'.
    * afield-seltext_s = 'Prd. Status'.
    * afield-ref_tabname = 'zbacklog_v2'.
    * APPEND afield TO xfield. CLEAR afield.
    ENDFORM. " fr_build_fc
    *& Form fr_output
    * text
    * --> p1 text
    * <-- p2 text
    FORM fr_output .
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    i_callback_program = sy-repid
    * I_CALLBACK_PF_STATUS_SET = ' '
    * I_CALLBACK_USER_COMMAND = ' '
    * I_STRUCTURE_NAME =
    * IS_LAYOUT =
    it_fieldcat = xfield[]
    i_default = 'X'
    i_save = 'A'
    TABLES
    t_outtab = gt_output
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    ENDFORM. " fr_output
    *& Form fr_get_prd_stat
    * text
    * -->P_WA_PRD_OBJNR text
    FORM fr_get_prd_stat USING p_objnr CHANGING p_prd_stat.
    DATA: lt_status TYPE STANDARD TABLE OF jstat,
    wa_status TYPE jstat,
    lv_status TYPE tj02t-txt04,
    lv_temp2 TYPE char5,
    lv_buff TYPE string.
    CALL FUNCTION 'STATUS_READ'
    EXPORTING
    client = sy-mandt
    objnr = p_objnr
    only_active = 'X'
    TABLES
    status = lt_status
    EXCEPTIONS
    object_not_found = 1
    OTHERS = 2.
    LOOP AT lt_status INTO wa_status.
    IF wa_status-stat(1) EQ 'I'.
    SELECT txt04 FROM tj02t
    INTO lv_status
    WHERE istat EQ wa_status-stat
    AND spras EQ 'E'.
    ENDSELECT.
    lv_temp2 = lv_status.
    CONCATENATE lv_temp2 p_prd_stat INTO p_prd_stat
    SEPARATED BY ','.
    ENDIF.
    CLEAR: wa_status, lv_status, lv_temp2.
    ENDLOOP.
    lv_buff = p_prd_stat.
    *Status of Production Order
    IF lv_buff CS 'CRTD'.
    p_prd_stat = 'Not Active'.
    ENDIF.
    IF lv_buff CS 'REL'.
    IF lv_buff CS 'GMPS'.
    p_prd_stat = 'Printed In Prod'.
    ELSE.
    p_prd_stat = 'Printed'.
    ENDIF.
    ENDIF.
    IF lv_buff CS 'TECO'.
    p_prd_stat = 'Technically Compt.'.
    ENDIF.
    ENDFORM. " fr_get_prd_stat

  • How to check the Production order exits

    Hi Experts
    Modification to processing of Command Orders & Tickets
    We require a modification to the processing being performed on sales data originating from the Command Concrete system and potentially from other systems yet to come online (e.g. Pinkenba Cement plant).
    The Sap process involved is ZINT_INBOUND_POLLING and within that, ZINT_CSTPORD_ROUTINES.
    The problem
    Currently there is an assumption that every sales order (and its deliveries) will include a product which is made to order, i.e. for which a production order will be required.
    In ZINT_CSTPORD_ROUTINES, a check is made to identify the production order linked to the sales order. If there is no such production order (usually because of the customeru2019s credit status) then processing of the ticket is terminated.
    This assumption would fall down if an order was to be raised (in Command) on which there is no concrete material. For example, if we sold a bag of pigment or a screed to a customer. In this case the item would be sold from stock and there would be no need for a production order.
    The solution
    In the routine which checks for the existence of a production order, modify the code as follows:
    Inspect each item on the sales order
    If (and only if) there is at least one item with a category of u201CZTACu201D then check for a production order, otherwise process the order in the usual manner.
    ----  ZINT_CSTPORD_ROUTINES -
    *&      Form  process_inbound_data
          Create prod. orders from ticket data extracted from the COMMAND
          system. Note that large portions of the code in this routine
          have been copied from the retired ZPPU_COMMAND_PRODUCTION
          interface program. This was done (1) because the old code works
          and (2) to save development time.
         -->T_ZINT_IDATA  Internal table of interface data
         -->T_ZINT_PARAM  Internal table of interface parameters
         -->T_ZINT_MSLOG  Internal table of messages
         -->P_ZINT_ID     Interface ID
         -->P_ZINT_TY     Inteface type
         -->P_ZINT_IS     IDOC group for interface
         -->P_ZINT_DL     Flag: delete IDOC group when complete
         -->P_ZINT_AL     Flag: run in standalone mode
         -->P_ZINT_NW     Flag: do not log warning messages
         -->P_ZINT_SQ     Interface sequence number
         <--P_ZINT_RC     Return code (<>0=>error)
    form process_inbound_data  tables   t_zint_idata structure zint_idata
                                        t_zint_param structure zint_param
                                        t_zint_mslog structure zint_mslog
                               using    p_zint_id    type      zint_id
                                        p_zint_ty    type      zint_ty
                                        p_zint_is    type      zint_is
                                        p_zint_dl    type      zint_dl
                                        p_zint_al    type      zint_al
                                        p_zint_nw    type      zint_nw
                                        p_zint_sq    type      zint_sq
                               changing p_zint_rc    type      zint_rc.
    program is continuing .............
    I WANT TO WRITE A CODING HERE **********************
    CHECK IF PRODUCTION ORDER REQUIRED
              IF NOT THEN GO TO PERFORM UPDATE DATA
      if production order required then check
                    for each item on sales order item list
                          with item category = 'ZTAC' then
                                     return true
                                next
                                  end function
        if there is no production code
               these has to be check from VBAP TABLE field VBELN and PSTYV (ZTAC,ZTAN Etc)
      select * from Vbap WHERE VBELN = '00000269951' and VBAP.PSTYV = 'ZTAC','ZTAN' Etc
    No production order?
        elseif lva_prodord is initial.
          clear v_messg.
          call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
            exporting
              input  = lva_filemat
            importing
              output = lva_filemat.
        No production order found - log a warning message.
          concatenate 'Production Order not be found for'
                      'Command order' lva_cmdord
                      'Material'      lva_filemat
                      'Customer'      lwa_02-customer
            into v_messg separated by space.
          perform write_log_entry
            tables t_zint_mslog
            using  'E' 'ZINT_CSTPORD_ROUTINES'
                       'FIND_SAP_PRODORD'
                         v_messg
                         p_zint_nw
                         lwa_01-ticketnumber.                " RJS
          continue.
        endif.
    Production Order WAS found... Continue creating IDOCS
        lwa_hdrlevel-postg_date = lwa_01-ticketdate.
    Obtain the storage location parameter value.
        read table t_zint_param with key zint_fn = 'LGORT'.
        if sy-subrc ne c_noerr.
          perform write_log_entry
            tables t_zint_mslog
            using  'E' 'ZINT_CSTPORD_ROUTINES'
                       'PROCESS_INBOUND_DATA'
                       'Parameter LGORT is missing from ZINT_PARAM'
                       p_zint_nw
                       lwa_01-ticketnumber.                " RJS
          exit.
        endif.
        loop at l_it_05 into lwa_05
          where ticketnumber = lwa_01-ticketnumber.
          clear lwa_gm_item_create.
          lva_filemat = lwa_05-material.
          if lva_filemat eq lva_prodmat.
            concatenate 'Command ticket-' lwa_05-ticketnumber
              into lwa_hdrlevel-conf_text.
            lwa_hdrlevel-conf_quan_unit = lwa_05-unitofmeasure.
            lwa_hdrlevel-yield          = lwa_05-quantity.
    check whether the confirmed value + current delivery value is equal *
    the production order qty. If the production order value is less
    than the total delivered value, set final conf indicator  and clear
    reservations
            lva_wemng = lva_wemng + lwa_05-quantity.
            if lva_wemng < lva_psmng.
              lwa_hdrlevel-clear_res      = c_false.
              lwa_hdrlevel-fin_conf       = ' '.
            else.
              lwa_hdrlevel-clear_res      = c_true.
              lwa_hdrlevel-fin_conf       = 'X'.
            endif.
            move: 'Z1BP_PP_HDRLEVEL' to t_idoc_data-segnam,
                  lwa_hdrlevel       to t_idoc_data-sdata.
            append t_idoc_data.
            clear lva_formmat.
            lva_formmat                   = lwa_05-material.
            lwa_gm_item_create-material   = lva_formmat.
            lwa_gm_item_create-plant      = lwa_03-plant.
            lwa_gm_item_create-ref_date   = lwa_01-ticketdate.
            lwa_gm_item_create-prod_date  = lwa_01-ticketdate.
            lwa_gm_item_create-move_type  = '101'.
            lwa_gm_item_create-spec_stock = 'E'.
            lwa_gm_item_create-sales_ord  = lva_saleord.
            lwa_gm_item_create-entry_qnt  = lwa_05-quantity.
            lwa_gm_item_create-entry_uom  = lwa_05-unitofmeasure.
            lwa_gm_item_create-orderid    = lva_prodord.
            lwa_gm_item_create-move_mat   = lva_formmat.
            lwa_gm_item_create-move_plant = lwa_03-plant.
            lwa_gm_item_create-mvt_ind    = 'F'.
            clear t_idoc_data.
            move: 'E1BP2017_GM_ITEM_CREATE' to t_idoc_data-segnam,
                  lwa_gm_item_create        to t_idoc_data-sdata.
            append t_idoc_data.
          else.
            clear: lva_loggr,
                   lva_formmat.
            lva_formmat = lwa_05-material.
            select single loggr into lva_loggr from marc
              where matnr = lva_formmat
              and   werks = lwa_03-plant.
            if sy-subrc ne 0.
              clear v_messg.
              No logistics handling group - log a warning message.
              concatenate 'No logistics handling group for material'
                           lva_formmat
                          'in plant'
                           lwa_03-plant
                into v_messg separated by space.
              perform write_log_entry
                tables t_ldata
                using 'W' 'ZINT_CSTPORD_ROUTINES'
                          'PROCESS_INBOUND_DATA'
                          v_messg
                          p_zint_nw
                          lwa_01-ticketnumber.                " RJS
              clear lva_loggr.
            endif.
            if lwa_03-satsur eq 'T'.
              lwa_e1edl21-lprio = 30.
            else.
              lwa_e1edl21-lprio = 20.
            endif.
          else.
            if lwa_03-satsur eq 'T'.
              lwa_e1edl21-lprio = 10.
            else.
              lwa_e1edl21-lprio = '  '.
            endif.
          endif.
          lwa_e1edl21-berot = lwa_04-driver.
          move: 'E1EDL21'   to t_idoc_data-segnam,
                lwa_e1edl21 to t_idoc_data-sdata.
          append t_idoc_data.
          lwa_e1edl55-qualf = '001'.
          lwa_e1edl55-refnr = lva_saleord.
          move: 'E1EDL55'   to t_idoc_data-segnam,
                lwa_e1edl55 to t_idoc_data-sdata.
          append t_idoc_data.
    Loop at materials - create delivery entry for each
          loop at l_it_05 into lwa_05
            where ticketnumber = lwa_01-ticketnumber.
            clear t_idoc_data.
            lwa_e1edl24-matnr = lwa_05-material.
            lwa_e1edl24-werks = lwa_03-plant.
            lwa_e1edl24-vfdat = lwa_01-ticketdate.
            lwa_e1edl24-lfimg = lwa_05-quantity.
            lwa_e1edl24-vrkme = lwa_05-unitofmeasure.
            lwa_e1edl24-lgort = t_zint_param-zint_fv.
            clear lva_loggr.
            lva_formmat = lwa_05-material.
            clear lva_loggr.
            select single loggr into lva_loggr from marc
              where matnr = lva_formmat
              and   werks = lwa_03-plant.
            if sy-subrc ne 0.
            No logistics handling group - log a warning message.
              concatenate 'No logistics handling group for material'
                           lva_formmat
                          'in plant'
                           lwa_03-plant
                into v_messg separated by space.
              perform write_log_entry
                tables t_ldata
                using 'W' 'ZINT_CSTPORD_ROUTINES'
                          'PROCESS_INBOUND_DATA'
                          v_messg
                          p_zint_nw
                          lwa_01-ticketnumber.                " RJS
              lva_loggr = 'BBIN'.
            endif.
            if lva_loggr is initial.
              move: 'E1EDL24'   to t_idoc_data-segnam,
                    lwa_e1edl24 to t_idoc_data-sdata.
              append t_idoc_data.
            endif.
          endloop.
          clear: lva_xabln,
                 lva_vbeln,
                 l_vbfa.
    Matching ticket against a Delivery?
          select single xabln vbeln into (lva_xabln,lva_vbeln) from likp
              where xabln = lwa_01-ticketnumber.
          if sy-subrc = 0.
    If found, does this delivery match the sales order?
            select * from vbfa into l_vbfa
              where vbelv = lva_saleord
              and   vbeln = lva_vbeln.
              exit.
            endselect.
          endif.
    No matching delivery found, or Matching delivery, but for other Sls Ord
          if lva_xabln is initial
          or ( lva_vbeln <> space and l_vbfa is initial ).
            if not lva_saleord is initial.
              perform create_delivery_idocs tables t_zint_mslog
                                            using  s_idcgp
                                                   lwa_01-ticketnumber
                                                   p_zint_nw.
            else.
              concatenate 'Error finding a Sales Order for ticket "'
                          lwa_01-ticketnumber
                          '" reprocess the file AFTER'
                          ' the sales order issues have been fixed'
              into        lva_outtext.
              perform write_log_entry tables t_zint_mslog
                                      using  'E'
                                             'ZINT_CSTPORD_ROUTINES'
                                             'PROCESS_INBOUND_DATA'
                                             lva_outtext
                                             p_zint_nw
                                             lwa_01-ticketnumber. " RJS
            endif.
          else.
            concatenate 'Command Ticket "'
                        lwa_01-ticketnumber
                        '" has already been processed into delivery "'
                        lva_vbeln
            into        lva_outtext.
            perform write_log_entry tables t_zint_mslog
                                    using  'I'
                                           'ZINT_CSTPORD_ROUTINES'
                                           'PROCESS_INBOUND_DATA'
                                           lva_outtext
                                           p_zint_nw
                                           lwa_01-ticketnumber. " RJS
            refresh t_idoc_data.
          endif.
        endif.
        refresh t_idoc_data.
    Write out all messages collected so far
        perform update_data tables t_zint_mslog
                            using p_zint_id p_zint_ty.
      endloop.
    Write out all messages collected so far
      perform update_data tables t_zint_mslog
                          using p_zint_id p_zint_ty.
    endform.                    " process_inbound_data
    Thnaks
    Regards

    Thanks
    Thread closed

  • Function Module / BAPI for reprinting a production order

    Does anyone know a Function Module to do a production order re-print?   Not an original, just a copy.
    Thanks,
    --Amy Smith
    --Haworth

    Thanks Kevin,
    Been there.  Couldn't find anything.  Doing a BDC for testing. 
    Looks like you have to do a Production Order change.    So maybe is a BAPI for that.
    I'll post what we find in this thread...
    --Amy Smith
    --Haworth

Maybe you are looking for

  • Trying to use laf project for the first time

    hi all , i need help , please i am trying to use laf project for the first time as i said , and i want help on the installation process step by step please , i am soo junior here i've just downloaded the zip file as the site said (http://fdtool.free.

  • Icloud calendar not on correct day when in Week or Month view

    Hi icloud calendar highlights a day behind, I almost forgot to pay a bill due as calendar was showing yesterdays date highlighted when viewed in Week or Month view! and assumed the bill was due tomorrow but of course it's due today! It's correct when

  • Uploaded iso 11.1 and now no bookmarks. how to get them back now

    how to get book marks on iphone 5 off pc.

  • Question bout video podcasts...

    i bought ipod nano last august (right after they had just come out) and i have the itunes it came with (it's like a year old now) and i'm not sure if the itunes will play the video podcasts cuz back then there was no such thing as the video ipod.i wo

  • Target failure

    I am very new to flash and java script but I have done some page building with html and doing what I call 'hard coding' ...typing the needed code in where my previous software wouldn't do it. I have a 3 frame setup. A top frame (for the main menu) a