Output type for shipment is in Yellow status
Hello Guys,
I'm just wondering why there is a certain output type which is supposed to be processed successfully from our shipment documents that is always in the "yellow" status. When I checked the access sequence, it seems that the condition tables that were maintained to it are not complete as expected, there are some entries that are missing. I'm thinking if I could just re-implement those missing entries?
I would just like to ask what are the possible instances wherein a certain output type is not being processed successfully, wherein its status is in "yellow." Is there are a connection with thewrong customization in the condition records, access sequences, procedures, or anything that can be configured in NACE.
Thanks in advance!
dear friend,
do you use ALTR as output type?
anyway, running NACR (or NACE) please make sure there is/there are condition records for your key combination which have
-shipment type
-partner function
-partner
-message transmission
-dispatch time
-language
also make sure your output device is valiud/active (check out by SPAD), checkbox "print immediately" is ON
good luck!
Similar Messages
-
Hello All,
I have a unique situation and need your inputs to identify possibilities in resolving it.
Here is the situation:
The transportation planning (TPE system) at our client is done by a 3rd party software. Now, we receive a Sales Order from a customer; create a delivery. TPE system creates the shipments and we PGI it and the sales order follows through the next steps. The shipments created from TPE go to Carriers and they carry the product from our warehouse to pool points from where customers pick it up. We have to pay the carriers from moving our goods from our warehouse to pool points. Thus whenever a shipment is created, we check-in...do the next steps in WM and finally when the shipment is ready, it triggers a payment IDOC to be sent to finance (an external system) so that it can be matched with Carrier invoices and then paid.
Our unique problem: There is a carrier (lets call it NCP) who is moving our goods from warehouse to pool point. We got a sales order from customer. This customer doesn't pick up goods from the pool point. He wants it to be delivered to his distribution center and to do this he is using the same transportation carrier (NCP). Thus when we received the sales order from customer, TPE system created a master shipment (5000001M) for NCP to pick up from our warehouse and deliver to pool point. You might be aware that TPE optimizes the route and thus combines multiple deliveries into one master shipment. From here NCP should pick up a part of the master shipment and deliver it to client. Thus SAP automatically created a sub-shipment (5000002S). This sub-shipment is a part of the master shipment and thus will not be separetely processed in WMS. The master shipment is checked-in, loaded and shipment ready - thus creating a payment IDOC to the external payee system. As the Sub-system is a part of master shipment, it is not touched and thus no payment IDOC is created.
Now the carrier sents two invoices - one for master to pick up goods from our warehouse and deliver it to pool point and the second one - to deliver a part of this shipment to customer's DC. Our payment system is unable to match it up with any IDOC's as we didn't send them out from SAP.
So this is where I'm struck. How should I configure the output for a sub-shipment so that it'll be triggered as soon as the delivery is PGI'ed? Could anyone give some inputs here?
Please let me know if more clarification is needed. Thanks in advance for looking into this.Chandrasekhar,
Thanks for your inputs, here are the clarifications you've asked for:
1) Sub- shipment is not a SAP object right? Or is it?
- Yes Sub-Shipment is an SAP object. All the shipments are created in TPE (Transportation Management System) by combining deliveries and sent to SAP (SHPMNT Idoc). SHPMNT creates the shipments for each deliveries within SAP. Master Shipments are picked up in WM and processed as per the requirements in the shipment (i.e. packaging etc)
2) You do PGI from shipment and not from delivery right?
- PGI is done on delivery after shipment start/end is completed in WM.
3) What do you mean when you say " .... when the sub-shipment is created but that might cause issues as Carriers can bill us even before the shipment is delivered to client". Carrier won't bill you when sub-shipment is created, right, so you are ahead of the carrier any ways.
- I meant if I create an output type and trigger it as soon as the sub-shipment is created in SAP (from the incoming SHPMNT Idoc), the payment idoc will hit our carrier payment system and is ready to go. Lets assume the carrier sends in an invoice (210), carrier payment system will honor it (it has no visibility on SAP - its an external system). Thus we cannot trigger the payment idoc (858) until the PGI is done on the delivery (to which the sub-shipment is attached).
The situation is:
Master Shipment (500001M) = Delivery 1 + Delivery 2 + Delivery 3 (This should go to customer from pool point - thus sub-shipment 500002S for the same carrier) + Delivery 4 + Delivery 5. This shipment is to delivery from Warehouse to Pool Point.
500001M is handled by WM. They pick/pack and ship. Once the shipment is started, automatically all deliveries are PGI'ed (automatic process). In this process 500002S isn't touched by WM coz they don't have to. So this just stays like that. Because unpacking and re-packing into sub-shipment is the responsibilty of NCP. We just pay for the costs to deliver it to customer's DC.
Now I have to issue output at the shipment level -> because carriers get the shipments (204) and generate invoices (210). Thus I need to generate an output (858) at the sub-shipment level whenever the delivery (to which it is tied to) is PGI'ed (by the automatic process from WM when the master shipment is complete). How can I configure this? The suggestion you gave is to handle the output at delivery level but I cannot do that because the payment instruction is to pay only for the sub-shipment i.e. from pool point to customer's warehouse. But delivery is tied to both master shipment and sub-shipment because this particular product has to go from wareshouse to customer.
You said, we can issue an output at sub-shipment level. Do you know how can I issue the output when the delivery is PGI'ed? Both are independent objects within SAP and also note that none of the tasks within this sub-shipment will be touched by WM. Thus I cannot directly create a condition based on an activity profile.
I hope I'm making some sense. -
Output determination for shipment types
Hi SD gurus,
I am new to SAP. I am unable to configure o/p for shipment documents. I wanted to send an EDI to carrier when my planning is done and email to customers when loading takes place. an some1 help me through this.
Thanks in advance.Dear VGR,
Do the configuration settings for the shipment output determination through this IMG path
IMG>Logistics Execution>Transportation>Basic Transportation Functions>Output Control-->Maintain Output Determination for Shipments
-->Maintain Condition Tables
-->Maintain Output Types
-->Maintain Access Sequences
-->Assign Output Types To Partner Functions
-->Maintain Output Determination Procedure
-->Assign Output Determination Procedures
I wanted to send an EDI to carrier when my planning is done and email to customers when loading takes place.
For he above requirement you take help of ABAPer to develop the output program in such way and assign that program to your shipment output type.
Maintain the condition records through VV71 transaction with Transm. Medium EDI and Email
I hope this will help you,
Regards,
Murali. -
Problem in using output type for purchase order
Hi experts,
I am using output type for first time so may be i have done wrong configuration for po output type.The steps i have done are :-
1) Going to tcode NACE->Selected the row u201CEF Purchase Orderu201D and clicked on u201CProcedures".
2) In procedures there are 2 procedures for the application EF (Purchase Order). To proceed further, we would need to find out the procedure that is currently active.Gone to transaction SPRO. In this, navigate as Materials management -> Purchasing ->Messages -> Output control -> Message Determination Schemas ->Define Message Schema for Purchase Order
3) Clicking on u201CAssign Schema to Purchase Orderu201D. So, the procedure RMBEF1 is active for EF (Purchase Order) .
4) Go back to transaction NACE. Select u2018EFu2019 and click on u201COutput typesu201D.
5) Let us use the output type u201CNEU name purchase orderu201D for this purpose. Double-click on NEU.
6) Ensured that the checkboxes u201CAccess to conditionsu201D and u201Cmultiple issuingu201D are checked and the access sequence is 0001(DocType/PurchOrg/Vendor).Only 0001 and 0002 is available in f4 help for this.
7) Now clicked on u201CProcessing Routinesu201D on the left hand side. Ensured that there is an entry for Medium u2018Au2019 (Distribution ALE).
8) After that going back to the main screen of NACE. Select EF (Purchase Order) and clicked on u201CCondition Recordsu201D.
Select NEU and clicked on u201CCondition recordsu201D. The pop-up box appears that gives three radio button option :-
1) Purchasing output determination :purchasing org / vendor for EDI
2) Purchasing output determination :doc. type / purchasing org /vendor
3) Purchasing output determination :document type
but it is not having option only for purchasing organisation through which we can send idoc for changes or creation of PO in that particular pur.org now if i choose 2) i have to give doc type and purchasing org both bcoz they are mandatory fields and value for vendor.
9) Also i have done the necessary ALE configuration (not covered in this document). In the partner profiles, use the message type u201CORDERSu201D and the IDOC type u201CORDERS05u201D.In the tab u201CMessage Controlu201D, used the process codes u201CME10u201D and u201CME11u201D for u201CPO Createu201D and u201CPO Changeu201D respectively.
but the idoc is not generated many times when po is changed and when once it is generated it is giving error
Please suggest solution.
Thanks in advance
nehavtIn me22n in messages tab after looking into processing log it is giving->No recipient found for message type ORDCHG in the
ALE model ,next time giving error as no idoc items belonging to purchasing document found,when i changed message type to ORDCHG the status is green in messages tab it is giving-> error occured while idoc xyz is sent and in WE02 status is red 02
error passing data to port(could not find code page for receiving system) -
Dear Experts,
I have created a output type for the application V2.
our requirment is when a user goto transaction VL02N click on Outbound Delivery->Issue Delevery Output then the Output Type should be displayed and if he clicks on that Output Type the script should execute.
my question is after we create Output type is anything else to do to get that Output Type in specific transaction?
thnx in advance...
VHi,
As per your question, I assume you are asking for getting a pop-up window for selecting the Output types when executing the ISSUE OUTPUT transaction in VL02N.
If you configured the Output type and maintain necessary setting in Output Determination procedure and Condition records.,& assignment of Smartforms and Print programs, then as per standard
A pop-up will appear with the Output type and the Processing status of it, there you will have options
1. To print
2. To Print preview
3. To check Print options.
This is the standard design, Please check with the Developer if this design was modified in the Print program .
Please revert back if you need more details.
regards,
santosh -
Output type for production order
Hi, when we save the production order, we wants to transfer the prod order header details in legacy system thru idocs. Trying to define output type for production orders in NACE t-code, could not find production order option there. Pls advise in this case how to define the output type for production order so that the header data will be taken by idoc and transfered to legacy. Pls advise.
Hi,
production orders don't have output types like SD orders.
But they have status control and events. Look into the object type BUS2005 in transaction SWO1. There you find the events which are fired by SAP, eg. ProductionOrder.Released.
Which Idoc type do you want to use?
I think you have to programm your own method for the Idoc creation. Put it into a workflow task and assign it to the event.
Regards
Michael -
Output type for tcode : F150
Hi ,
I am working with customer dunning letter - tr. F150
I want to attach a modified zform to it .
( acopy of standard dunning into z with some layout changes )
How to configure it / what is the output type for it / what is the application type for dunning form?
Regards
RajeshHi,
Assign in the IMG (SPRO) menu....
Financial Accounting
Account Receivable and Accounts payable
Business transactions
Dunning
Printout
All req configuration is done here...
Regards
Stu -
Delivery Schedule output type for change
Hi all,
i have created a custom output type for delivery schedule. i am using this output type to send IDoc. For create it is working fine. i have maintained condtion record as well.
whenever the delivery date and qty is changed, change output type is triggered but it fails there. the error shows no IDoc could be generated as there are no changes releveant to that.
i checked the configuration field relevant to printout changes, in that for table EKET-EINDT and menge i have checked the scheduling agreement. but here i could not find delivery schedule.
Can you please help on this..
ThanksHi
You need to confiugre output determination. Please check the below link.
Re: Email output of PO
output determination
Regards
Antony -
Is there a way to change the output type for Email Remittance Program?
Hello,
We are trying to implement Separate Remittance Program.The seeded output type is PDF( I have checked the output type for send separate remittance concurrent program) however the
email which we receive looks like a regular email I mean with a normal text . Is there a way to get the output in different type like excel,attachment,pdf.
Any inputs would be highly appreciated.
Thanks,
SushmaCurrently there is a bug raised
Bug 8208646 : R12 UNABLE TO SEND SEPARATE REMITTANCE ADVICE AS EMAIL ATTACHMENT IN PDF.
If you want to customize this process you need to create data definition,new rtf template and bursting program to send pdf as attachment. -
Output type for the managed codes cut letter is hard coded
Hello,
Very Good afternoon!
I have a requirement to create new Output Types for a Smart Form.
The already existing Output types are hard coded as shown Below :
CONSTANTS : c_kschl_order LIKE nast-kschl
VALUE 'ZUS0',
c_kschl_order1 LIKE nast-kschl
VALUE 'ZUS1',
Now they do not want to use ZUS1. Insted they wnat to use New Output Types.
u2022 Remove ZUS1 as we no longer use this one.
u2022 Add ZAU0
u2022 Add ZNZ0
u2022 Add ZJP0
u2022 Add ZCN0
u2022 Add ZKR0
How to add these Output types without Hardcoding as shown ABove.
Any Suggestions will be appreciated.....
For reference..I will paste the code of the Program here.
Here is the code :
PROGRAM DECLARATION
PROGRAM ID Z_RVADOR01_SALES_CUT_LETTER
TABLES: vbak, "Sales Document: Header Data
vbap, "Sales Document: Item Data
vbpa, "Sales Document: Partner
vbep, "Sales Document: Schedule Line Data
kna1, "General Data in Customer Master
MARA, "Material Master
KOMK, "Communicationarea for conditions
KOMP, "Communicationarea for conditions
KOMVD, "Communicationarea for conditions
VBCO3, "Communicationarea for view
VBDKA, "Headerview
VBDPA, "Itemview
VBDPAU, "Subitemnumbers
CONF_OUT, "Configuration data
SADR, "Addresses
TVAG, "Reason for rejection
VEDKA, "Servicecontract head data
VEDPA, "Servicecontract position data
VEDKN, "Servicecontract head notice data
VEDPN, "Servicecontract pos. notice data
RISERLS, "Serialnumbers
KOMSER, "Serialnumbers for print
TVBUR, "Sales office
TVKO, "Sales organisation
ADRS, "Communicationarea for Address
FPLTDR, "billing schedules
WTAD_ADDIS_IN_SO_PRINT, "additional
WTAD_BUYING_PRINT_EXTRA_TEXT, "texts belonging to additional
adrc,
adr6,
t247.
INCLUDE RVADTABL.
INCLUDE RVDIREKT.
INCLUDE VEDADATA.
data for access to central address maintenance
INCLUDE SDZAVDAT.
TYPE-POOLS: ADDI.
DATA PRICE_PRINT_MODE(1) TYPE C. "Print-mode
DATA: RETCODE LIKE SY-SUBRC. "Returncode
DATA: REPEAT(1) TYPE C.
DATA: XSCREEN(1) TYPE C. "Output on printer or screen
DATA: BEGIN OF STEU, "Controldata for output
VDKEX(1) TYPE C,
VDPEX(1) TYPE C,
KBKEX(1) TYPE C,
KBPEX(1) TYPE C,
END OF STEU.
DATA: BEGIN OF TVBDPA OCCURS 0. "Internal table for items
INCLUDE STRUCTURE VBDPA.
DATA: END OF TVBDPA.
DATA: BEGIN OF TKOMV OCCURS 50.
INCLUDE STRUCTURE KOMV.
DATA: END OF TKOMV.
DATA: BEGIN OF TKOMVD OCCURS 50.
INCLUDE STRUCTURE KOMVD.
DATA: END OF TKOMVD.
DATA: BEGIN OF TVBDPAU OCCURS 5.
INCLUDE STRUCTURE VBDPAU.
DATA: END OF TVBDPAU.
DATA: BEGIN OF TKOMCON OCCURS 50.
INCLUDE STRUCTURE CONF_OUT.
DATA: END OF TKOMCON.
DATA: BEGIN OF TKOMSERVH OCCURS 1.
INCLUDE STRUCTURE VEDKA.
DATA: END OF TKOMSERVH.
DATA: BEGIN OF TKOMSERVP OCCURS 5.
INCLUDE STRUCTURE VEDPA.
DATA: END OF TKOMSERVP.
DATA: BEGIN OF TKOMSERVHN OCCURS 5.
INCLUDE STRUCTURE VEDKN.
DATA: END OF TKOMSERVHN.
DATA: BEGIN OF TKOMSERVPN OCCURS 5.
INCLUDE STRUCTURE VEDPN.
DATA: END OF TKOMSERVPN.
DATA: BEGIN OF TKOMSER OCCURS 5.
INCLUDE STRUCTURE RISERLS.
DATA: END OF TKOMSER.
DATA: BEGIN OF TKOMSER_PRINT OCCURS 5.
INCLUDE STRUCTURE KOMSER.
DATA: END OF TKOMSER_PRINT.
DATA: BEGIN OF TFPLTDR OCCURS 5.
INCLUDE STRUCTURE FPLTDR.
DATA: END OF TFPLTDR.
DATA: TADDI_PRINT TYPE ADDI_SO_PRINT_ITAB WITH HEADER LINE.
TYPES:BEGIN OF ty_orders ,
xblnr LIKE mkpf-xblnr, "delivery number
erfmg LIKE mseg-erfmg, "goods issue quantity
custname LIKE kna1-name1, "customer name
bstnk LIKE vbak-bstnk, "purchase order number
ean11 LIKE vbap-ean11, "upc
kdmat LIKE vbap-kdmat, "customer material code
arktx LIKE vbap-arktx, "description
csrno LIKE kna1-kunnr, "customer service rep number
spras LIKE kna1-spras, "customer language key
csrname LIKE kna1-name1, "customer service rep name
csremail LIKE adr6-smtp_addr, "csr email
csrphone LIKE kna1-telf1, "csr telephone
csrext LIKE adrc-tel_extens, "csr extension
csrfax LIKE kna1-telfx, "csr fax
total LIKE lips-lfimg, "cut quantity
ldate(18) TYPE c,
END OF ty_orders.
CONSTANTS: c_kschl_order LIKE nast-kschl
VALUE 'ZUS0',
c_kschl_order1 LIKE nast-kschl
VALUE 'ZUS1', c_parvw_shipto LIKE vbpa-parvw
VALUE 'WE',
c_parvw_csr LIKE vbpa-parvw
VALUE 'ZS',
c_eng(1) TYPE c VALUE 'E',
c_sep(1) TYPE c VALUE '/',
c_sale(25) type c VALUE 'Sales Order'.
DATA: WA_VBAK TYPE VBAK,
tbl_ord TYPE ty_orders OCCURS 0 WITH HEADER LINE,
w_csrname(30) TYPE c,
w_csrno(30) TYPE c,
w_email LIKE adr6-smtp_addr,
f_shipto_found TYPE c,
w_custname(30) TYPE c,
w_month(2),
w_ldate(18),
w_total LIKE lips-lfimg,
w_lines TYPE i VALUE 0,
f_mail(1) TYPE c,
cnt_1 TYPE i VALUE 0,
cnt_2 TYPE i VALUE 0,
tbl_otf LIKE itcoo OCCURS 0 WITH HEADER LINE,
w_type(25) TYPE c,
st_doc_data LIKE sodocchgi1,
tbl_objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE,
tbl_line LIKE tline OCCURS 0 WITH HEADER LINE,
tbl_attach LIKE solisti1 OCCURS 10 WITH HEADER LINE,
tbl_objhead LIKE solisti1 OCCURS 10 WITH HEADER LINE,
tbl_proc_para LIKE soparai1 OCCURS 10 WITH HEADER LINE,
tbl_maillist LIKE somlreci1 OCCURS 10 WITH HEADER LINE,
tbl_pack_list LIKE sopcklsti1 OCCURS 10 WITH HEADER LINE,
tbl_cpo LIKE itcpo OCCURS 0 WITH HEADER LINE,"SAPscript output
" interface
tbl_cpp LIKE itcpp OCCURS 0 WITH HEADER LINE,"SAPscript output
" parameters
tbl_smtp TYPE szadr_adsmtp_line OCCURS 0 WITH HEADER LINE,
tbl_cdhdpos LIKE cdshw OCCURS 0 WITH HEADER LINE,
tbl_cdpos LIKE cdshw OCCURS 0 WITH HEADER LINE,
wrk_lines LIKE sy-tabix,
hltlines TYPE i,
off1 TYPE p,
fle1(2) TYPE p,
fle2(2) TYPE p,
htabix LIKE sy-tabix,
hfeld(500) TYPE c.
FORM ENTRY USING RETURN_CODE US_SCREEN.
if sy-tcode = 'VA01'.
IF nast-kschl = c_kschl_order.
SELECT SINGLE * FROM VBAK INTO WA_VBAK WHERE vbeln = nast-objky.
IF SY-SUBRC = 0.
CLEAR RETCODE.
XSCREEN = US_SCREEN.
PERFORM PROCESSING USING us_screen.
IF RETCODE NE 0.
RETURN_CODE = 1.
ELSE.
RETURN_CODE = 0.
ENDIF.
ELSE.
retcode = sy-subrc.
syst-msgid = 'ZVERROR'.
syst-msgno = '000'.
syst-msgty = 'E'.
syst-msgv1 = NAST-KSCHL.
syst-msgv1 = 'Sales Order cut letter
for this order already issued'.
syst-msgv2 = ' '.
PERFORM protocol_update.
ENDIF.
ELSE.
CLEAR retcode.
xscreen = us_screen.
PERFORM processing USING us_screen.
IF retcode NE 0.
return_code = 1.
ELSE.
return_code = 0.
ENDIF.
ENDIF.
endif.
ENDFORM.
FORM PROCESSING *
FORM PROCESSING USING proc_screen.
CASE nast-kschl.
WHEN c_kschl_order.
PERFORM get_orders.
CHECK retcode = 0.
PERFORM openform USING proc_screen vbak-landtx.
CHECK retcode = 0.
PERFORM layout.
CHECK retcode = 0.
CHECK proc_screen NE 'X'.
w_type = c_sale.
PERFORM send_email USING proc_screen.
WHEN c_kschl_order1.
PERFORM get_orders.
CHECK retcode = 0.
CHECK proc_screen NE 'X'.
w_type = c_sale.
PERFORM send_email USING proc_screen.
WHEN OTHERS.
retcode = 1.
syst-msgid = 'E0'.
syst-msgno = '430'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDCASE.
IF retcode EQ 0.
syst-msgid = '69'.
syst-msgno = '254'.
syst-msgty = 'S'.
syst-msgv1 = nast-kschl.
PERFORM protocol_update.
ELSE.
syst-msgid = 'CKCC'.
syst-msgno = '036'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
ENDFORM.
FORM PROTOCOL_UPDATE *
The messages are collected for the processing protocol. *
FORM PROTOCOL_UPDATE.
IF xscreen EQ space.
CALL FUNCTION 'NAST_PROTOCOL_UPDATE'
EXPORTING
MSG_ARBGB = SYST-MSGID
MSG_NR = SYST-MSGNO
MSG_TY = SYST-MSGTY
MSG_V1 = SYST-MSGV1
MSG_V2 = SYST-MSGV2
MSG_V3 = SYST-MSGV3
MSG_V4 = SYST-MSGV4
EXCEPTIONS
OTHERS = 1.
ELSE.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.
*& Form get_orders
text
--> p1 text
<-- p2 text
FORM get_orders.
DATA : f_csr_found TYPE c.
SELECT SINGLE vbeln vkorg vdatu bstnk kunnr
FROM vbak
INTO (vbak-vbeln,vbak-vkorg,vbak-vdatu,vbak-bstnk,vbak-kunnr)
WHERE vbeln EQ nast-objky.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'VN'.
syst-msgno = '203'.
syst-msgty = 'E'.
syst-msgv1 = 'VBAK'.
syst-msgv2 = sy-subrc.
PERFORM protocol_update.
ENDIF.
SELECT vbeln posnr matnr pmatn arktx abgru kdmat werks
FROM vbap
INTO (vbap-vbeln,vbap-posnr,vbap-matnr,vbap-pmatn,
vbap-arktx,vbap-abgru,vbap-kdmat,vbap-werks)
WHERE vbeln = vbak-vbeln
AND abgru NE space "select items havng Rejection Reason
and PSTYV NE 'ZHDR'.
to check whether the reason for rejection was picked from the
managed codes tables
data: war_abgru type abgru,
w_exist type c.
clear : war_abgru, w_exist.
select single abgru from ZMAT_REJ002
into war_abgru
where vkorg = vbak-vkorg
and kunnr <> vbak-kunnr
and MATNR = vbap-matnr
and datef <= vbak-vdatu
and datet >= vbak-vdatu.
if sy-subrc <> 0.
select single abgru from ZMAT_REJ003
into war_abgru
where vkorg = vbak-vkorg
and kunnr <> vbak-kunnr
and MATNR = vbap-matnr
and datef <= vbak-vdatu
and datet >= vbak-vdatu.
if sy-subrc <> 0.
select single abgru from ZMAT_REJ001
into war_abgru
where vkorg = vbak-vkorg
and werks <> vbap-werks
and matnr = vbap-matnr
and datef <= vbak-vdatu
and datet >= vbak-vdatu.
if sy-subrc <> 0.
select single abgru from ZMAT_REJ004
into war_abgru
where vkorg = vbak-vkorg
and matnr = vbap-matnr
and datef >= vbak-vdatu
and datet <= vbak-vdatu.
if sy-subrc <> 0.
else.
w_exist = 'X'.
endif.
else.
w_exist = 'X'.
endif.
else.
w_exist = 'X'.
endif.
else.
w_exist = 'X'.
endif.
if w_exist = 'X'.
end for check from managed codes table
*to find the quantity fields
SELECT SINGLE wmeng bmeng
FROM vbep
INTO (vbep-wmeng,vbep-bmeng)
WHERE vbeln EQ vbap-vbeln
AND posnr EQ vbap-posnr.
*to get info about the customer
SELECT SINGLE kunnr
FROM vbpa
INTO vbpa-kunnr
WHERE vbeln EQ vbak-vbeln
AND parvw EQ c_parvw_shipto.
IF sy-subrc EQ 0.
f_shipto_found = 'X'.
SELECT SINGLE name1 spras
FROM kna1
INTO (kna1-name1,kna1-spras)
WHERE kunnr EQ vbpa-kunnr.
IF sy-subrc EQ 0.
w_custname = kna1-name1.
CLEAR kna1-name1.
ENDIF.
ENDIF.
SELECT SINGLE kunnr
FROM vbpa
INTO vbpa-kunnr
WHERE vbeln EQ vbak-vbeln
AND parvw EQ c_parvw_csr.
IF SY-SUBRC EQ 0.
f_csr_found = 'X'.
SELECT SINGLE kunnr name1 name2 adrnr
FROM kna1
INTO (kna1-kunnr,kna1-name1,kna1-name2,
kna1-adrnr)
WHERE kunnr EQ vbpa-kunnr.
IF sy-subrc EQ 0.
w_csrno = kna1-kunnr.
w_csrname = kna1-name1.
CLEAR kna1-name1.
SELECT SINGLE tel_number tel_extens fax_number
FROM adrc
INTO (adrc-tel_number,adrc-tel_extens,
adrc-fax_number)
WHERE addrnumber EQ kna1-adrnr.
CLEAR: adr6, w_email.
SELECT SINGLE * FROM adr6 WHERE addrnumber = kna1-adrnr.
IF sy-subrc = 0.
w_email = adr6-smtp_addr.
ENDIF.
ENDIF.
ENDIF.
*to get the date format in french
IF kna1-spras NE c_eng.
w_month = sy-datum+4(2).
SELECT SINGLE ltx
FROM t247
INTO t247-ltx
WHERE spras EQ kna1-spras
AND mnr EQ w_month.
CONCATENATE sy-datum+6(2)
t247-ltx
sy-datum+0(4)
INTO w_ldate
SEPARATED BY space.
ELSE.
CONCATENATE sy-datum+4(2)
sy-datum+6(2)
sy-datum+0(4)
INTO w_ldate
SEPARATED BY c_sep.
ENDIF.
w_total = vbep-wmeng - vbep-bmeng.
IF w_total GT 0.
PERFORM fill_orders.
ELSE.
IF vbap-abgru NE space.
w_total = vbep-wmeng.
PERFORM fill_orders.
ENDIF.
ENDIF.
CLEAR vbap.
endif. " check for w_exist for Managed Codes entry
ENDSELECT.
IF tbl_ord[] IS INITIAL.
retcode = 1.
syst-msgid = 'FZ'.
syst-msgno = '027'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
IF f_csr_found IS INITIAL.
syst-msgid = '8B'.
syst-msgno = '127'.
syst-msgty = 'W'.
syst-msgv1 = c_parvw_csr.
PERFORM protocol_update.
ENDIF.
IF f_shipto_found IS INITIAL.
syst-msgid = '8B'.
syst-msgno = '127'.
syst-msgty = 'W'.
syst-msgv1 = c_parvw_shipto.
PERFORM protocol_update.
ENDIF.
ENDFORM. " get_orders
*& Form layout
text
--> p1 text
<-- p2 text
FORM layout.
SORT tbl_ord BY bstnk kdmat.
LOOP AT tbl_ord.
AT FIRST.
PERFORM writeform_text.
ENDAT.
PERFORM writeform.
AT LAST.
PERFORM writeform_footer.
ENDAT.
ENDLOOP.
CLEAR : cnt_1,cnt_2.
PERFORM closeform.
ENDFORM. " layout
*& Form openform
text
FORM openform USING us_screen us_country.
DESCRIBE TABLE tbl_ord LINES w_lines.
IF w_lines EQ 0.
retcode = '1'.
syst-msgid = 'FE'.
syst-msgno = '078'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
CHECK retcode EQ 0.
INCLUDE zrvadopfo.
ENDFORM. " openform
*& Form send_email
text
-->P_PROC_SCREEN text
FORM send_email USING PROC_SCREEN.
f_mail = 'X'.
PERFORM openform USING proc_screen vbak-landtx.
LOOP AT tbl_ord.
AT FIRST.
PERFORM writeform_text.
ENDAT.
PERFORM writeform.
AT LAST.
PERFORM writeform_footer.
ENDAT.
ENDLOOP.
CLEAR cnt_2.
PERFORM closeform.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF' "'ASCII'
IMPORTING
bin_filesize = st_doc_data-doc_size
TABLES
otf = tbl_otf
lines = tbl_line
EXCEPTIONS "DEVK912166
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
OTHERS = 4.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'OA'. "DEVK912166
syst-msgno = '186'. "DEVK912166
syst-msgty = 'E'. "DEVK912166
PERFORM protocol_update.
ENDIF.
REFRESH tbl_objtxt.
CLEAR tbl_objtxt.
CLEAR tbl_proc_para.
REFRESH tbl_proc_para.
CLEAR tbl_maillist.
REFRESH tbl_maillist.
CLEAR tbl_pack_list.
REFRESH tbl_pack_list.
st_doc_data-obj_name = 'Sales Order Cut Letter'.
st_doc_data-obj_langu = 'E'. "DEVK905849
st_doc_data-sensitivty = 'F'. "DEVK905849
st_doc_data-obj_prio = 1. "DEVK905849
CONCATENATE w_type 'Cut Letter' INTO "#EC NOTEXT
st_doc_data-obj_descr SEPARATED BY space.
DATA w_line(3) TYPE c.
PERFORM format_pdf. "DEVK905849
concatenate VBAK-VBELN '.PDF' into tbl_objhead.
tbl_objhead = 'Sales Order Cut Letter.PDF'.
APPEND tbl_objhead.
"DEVK905849
CLEAR wrk_lines.
DESCRIBE TABLE tbl_attach LINES wrk_lines.
fields needed for email
tbl_maillist-com_type = 'INT'.
tbl_maillist-receiver = w_email.
tbl_maillist-rec_type = 'U'.
APPEND tbl_maillist.
send email
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
STARTING NEW TASK 'MAIL'
EXPORTING
document_data = st_doc_data
document_type = 'PDF'
COMMIT_WORK = 'X' " added after ECC6.0 upgrade
TABLES
object_header = tbl_objhead
object_content = tbl_objtxt
receivers = tbl_maillist
EXCEPTIONS "DEVK912166
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'ZA_G'. "DEVK912166
syst-msgno = '922'. "DEVK912166
syst-msgty = 'E'. "DEVK912166
syst-msgv1 = sy-subrc. "DEVK912166
syst-msgv2 = tbl_smtp-adsmtp-smtp_addr. "DEVK912166
PERFORM protocol_update.
syst-msgid = 'VW'.
syst-msgno = '001'.
syst-msgty = 'E'.
syst-msgv1 = 'Print successful:email Recepient Invalid'."#EC NOTEXT
PERFORM protocol_update.
ENDIF.
ENDFORM. " send_email
*& Form fill_orders
text
--> p1 text
<-- p2 text
FORM fill_orders.
tbl_ord-bstnk = vbak-bstnk.
tbl_ord-kdmat = vbap-kdmat.
tbl_ord-xblnr = vbak-vbeln.
tbl_ord-ean11 = vbap-pmatn.
tbl_ord-arktx = vbap-arktx.
tbl_ord-csrno = w_csrno .
tbl_ord-csremail = w_email.
tbl_ord-spras = kna1-spras .
tbl_ord-csrphone = adrc-tel_number.
tbl_ord-csrfax = adrc-fax_number.
tbl_ord-csrext = adrc-tel_extens.
tbl_ord-total = w_total.
tbl_ord-custname = w_custname.
tbl_ord-csrname = w_csrname .
tbl_ord-ldate = w_ldate.
APPEND tbl_ord.
CLEAR tbl_ord.
CLEAR w_total.
CLEAR w_ldate.
ENDFORM. " fill_orders
*& Form writeform_text
text
--> p1 text
<-- p2 text
FORM writeform_text.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'WTEXT'
window = 'WINDOW2'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'EBR'.
syst-msgno = '056'.
syst-msgty = 'E'.
syst-msgv1 = 'WTEXT'.
syst-msgv2 = 'WINDOW2'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " writeform_text
*& Form writeform
text
--> p1 text
<-- p2 text
FORM writeform.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'EMAIN'
window = 'MAIN'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'EBR'.
syst-msgno = '056'.
syst-msgty = 'E'.
syst-msgv1 = 'WTEXT'.
syst-msgv2 = 'WINDOW2'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " writeform
*& Form writeform_footer
text
--> p1 text
<-- p2 text
FORM writeform_footer.
IF nast-spras = 'N'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'FOOTER'
window = 'MAIN'
EXCEPTIONS
element = 1
window = 2.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'WFOOTER'
window = 'WINDOW12'
EXCEPTIONS
element = 1
window = 2.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'EBR'.
syst-msgno = '056'.
syst-msgty = 'E'.
syst-msgv1 = 'WFOOTER'.
syst-msgv2 = 'WINDOW12'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " writeform_footer
*& Form closeform
text
--> p1 text
<-- p2 text
FORM closeform.
CALL FUNCTION 'CLOSE_FORM'
TABLES
otfdata = tbl_otf
EXCEPTIONS
unopened = 1
bad_pageformat_for_print = 2
OTHERS = 3.
IF sy-subrc NE 0.
retcode = sy-subrc.
syst-msgid = 'PS'.
syst-msgno = '005'.
syst-msgty = 'E'.
PERFORM protocol_update.
ENDIF.
ENDFORM. " closeform
*& Form format_pdf
text
--> p1 text
<-- p2 text
FORM format_pdf.
FIELD-SYMBOLS <fs>.
DESCRIBE TABLE tbl_line LINES hltlines.
DESCRIBE FIELD tbl_line LENGTH fle1 IN BYTE MODE . Defect#1579-
DESCRIBE FIELD tbl_objtxt LENGTH fle2 IN BYTE MODE . Defect#1579-
Start of Defect#1579+
DESCRIBE FIELD tbl_line LENGTH fle1 IN CHARACTER MODE.
DESCRIBE FIELD tbl_objtxt LENGTH fle2 IN CHARACTER MODE.
End of Defect#1579+
CLEAR tbl_objtxt.
REFRESH tbl_objtxt.
LOOP AT tbl_line.
htabix = sy-tabix.
MOVE tbl_line TO hfeld+off1.
IF htabix = hltlines.
fle1 = strlen( tbl_line ).
ENDIF.
off1 = off1 + fle1.
IF off1 GE fle2.
CLEAR tbl_objtxt.
tbl_objtxt = hfeld(fle2).
APPEND tbl_objtxt.
SHIFT hfeld BY fle2 PLACES.
off1 = off1 - fle2.
ENDIF.
IF htabix = hltlines.
IF off1 GT 0.
CLEAR tbl_objtxt.
tbl_objtxt = hfeld(off1).
APPEND tbl_objtxt.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. " format_pdf
ANy Suggestion or help will be appreciated!
Regards,
Kittu
Edited by: Kittu on Jun 30, 2008 12:32 PMHello Julie Waller,
Very Good evening!
Thank you very much for your response!
Sometimes...I miss the basic things and start concentarcting on typical ways to fix the issue. ....which will only make my issue critical.
Hello Sathya,
Thank you for your response!
POints are rewarded..
Have a great day ahead!
Regards,
Kittu -
Output type for Proforma Invoice for return delivery from delivery type RLN
Client require Output type Proforma Invoice for return delivery to vendor. As such return item category is not relevant for pricing so from delivery to proforma invoice can not have with p-ricing. I got quantity correct but pricing is coming Zero.
Client have ZPAC as packing list output type from delivery which shows quantity and pricing. So decided to use the same logic to pull pricing for proforma invoice from delivery.
Here delivery has standard output ZPAC as packing list with access sequence Z002 as Delivery Type.
I want to pop up output type for all return delivery so using access sequence with delivery type/vendor.
Vendor filed does not exist in delivery output type so brought that firld LIFNR.
It is assigned to procedure and maintained ZPRO output type for Proforma invoice. Asigned VV21 on front end.
Problem Still automatic output type ZPRO is not poping up. What type of access sequence will help me to pop up or what in configuration am I miising?
Appreciate help for solution at earliest.Hi Padamsree,
I know Pricing & output very well. I need profomra invoice to be printed with quantity & value for return goods to the vendor. Pricing is associated with Item category RLLN for delivery type RLL which is return type delivery.
I need to have pricing in my Proforma invoice which is copied from delivery to billing document VTFL. Just check well how it is working in the system & if you know please answer so that it should be workable on the system. As theoretical answer may not be helpful. Appreciate for your time.
Thanks -
Regarding Creation of Output types for SAP SCRIPTS
Hi All,
I want to create new output types for my SAP Script.
What is the procedure for creating new <b>Z - Output Type</b>.
Like <b>ZA01 for Sales Order</b>.
What is the procedure can any body help me in this regard.
It is not to use <b>ZA01</b> in <b>NACE</b> & connect Print Program & Layout set against Form Entry.
It is for creation of <b>ZA01 Output</b> Type itself.
If anybody knows the procedure please post the steps.
Also please mention will there be any diffrence in creation from <b>Module to Module</b> (or) <b>Transaction (Vs) Transaction</b>. Just like <b>Sales Order (Vs) Purchase Order (Vs) Production Order</b>.
Thanks in advance.
Thanks & Regards,
Rayeez.hi Shaik,
Steps for output type:
Go to NACE Transaction
Select V1 - Sales.
Click Output type
In edit mode , click on new entries.
Give output type as ZA01 with some descp.
Then enter , then u need to give the Access seq. as 0010
Rest proprties are more and less similar to the BA00 standard output type in V1 only.
After that u need to give the processing routines.
In that u need to give the Program name
followed by Form routine name
In this way u can create the output from NACE tran.
Let me know if u want anything else.
Cheers
Rewrd points, if found helpful -
Need to configure output type for adobe form
Hello All,
I need to configure output type for Adobe Form thru NACE. What would be print program and how do I call my form from that program? and, what would be the FORM routine for that form in NACE?
I'm little confused, Pls I need your help.
Thanks in advance,
ChandraHi,
Just before few weeks we did this task.
Say for example if you want to print PO details through ADOBE form instead of normal sapscript layout or standard MEDRUCK, you can follow the following steps.
1. Design the form in SFP tcode, by passing the necessary inputs through form interface.
2. Then use tcode tcode NACE and select EF as application and click output types button on the application tool bar. Select NEU output type and double click processing routines on left side.
3. Then, in the right side of the screen we can see the calling program and the form (may be sapscript or smartform) whatever used.
4. For form names we have two options in NACE tcode.
One is Form and the otherone is PDF/Smartform Form. If you are using adobe form give your form name under PDF/Smartform and also select PDF under the type option in the same screen.
This worked perfectly for us. But pass the required parameters to the form from the routine used in standard program.
If any queries please post it. -
New Output type for purchase return excise invoice..?
Hi all
For purchase return process with exisable material.
Here I m using the transaction
1.J1IS to create purchase return excise invoice and
2.J1IV for posting to accounts & print purchase return excise invoice
.In standard SAP the output for purchase return excise invoice is JEXC.
here my query is started,
ABAPer created the new program for purchase return output with all new layouts,
And from functional side i have defined new output type for the same as YEXC copying from JEXC.
While doing the transaction J1IV, i getting the output type YEXC, i m not able to print preview.
To proceed further i need some body guidence. Like where to assign the output type.
some body can give some inputs .
Thanks
sap-mmHi AP thanks for ur immediate response.
But i have done all the configuratuion in NACE only.
There in nace i m not able find out the mistake or missing configuration.
Can u expalin me step by step process end to end .
Thanks
sap-mm -
Automatic configuration of NEU output types for PO Vendor and its partners
Hi All,
I have requirement where I need need to send IDOC to PO Vendor and its partners at the same time when PO is created and changed. I need to get NEU output types for Vendor and Partners in messages automatically. Can any one guide me how to get this functionality. Please help me with step by step process. I am new to MM.
Thanks,
RaviTo attach output type to purchase order :
Go to NACE , Select Application EF ( Purchase Order) and Click on Condition Records button.
In a POP UP window double click NEU and then select the right Key Combination and maintain right transmission medium and output devide details.
Maybe you are looking for
-
For STO with billing how to take material in plant stock without cancelling excise duty
Hi, Please suggest for STO with billing how to take material back in plant stock without cancelling excise duty. Scenario is Material transffered from manufacturing plant to depot,material is in transit now, but due to some reason material calls back
-
XIF Adapter : Upload of Business partner(Using LSMW) Telephone Numbers
Hi all I'am uploading BP data using XIF Adapter and I am using the LSMW-IDOC Method (Basic type:CRMXIF_PARTNER_SAVE_M02) Here My client came with 4 telephone numbers, can any one please help me how can I uploade these 4 telephone numbers. when I am t
-
hi. i tried to search for some help but i couldnt find anything what should help me. i bought K7N2 delta2 board with integrated audio card (just 3 connectors-in, out, mic). Problem is, that winamp says "no sound device found" and then some infos (i h
-
Internal SATA drives on G5 Dual 2ghz?
Is there any difference at all between drive bay "A" and bay "B?" I know that we can make boot drives for either, but is there any advantage to having the primary drive be in bay "A" -vs- "B?" Additionally, if both are loaded with bootable systems, c
-
ICS 2.x: How do I add a new timezone?
How do I add a new timezone in iPlanet Calendar Server (iCS) 2.x? <P> Use the following steps to add a new timezone:<BR> <P> <OL> <LI>Create a new <B>timezone definition</B>. <B>Timezone definitions</B> are are specified as iCalendar objects, as defi