Using NAST
Hi
I am doing customization for RFQ printing ( TCODE ME9A)
I want to know can I get the same selection screen as of ME9A using NAST info for my z driver program.
OR
When I assign my z-program & z smartform in NACE for the output type of RFQ, is it possible that the same selection screen is called?
Which function module can be used?
Kindly provide sample code
Regards
Harshada
Yes , you can copy RM06ENDR_ALV ( program for ME9A) into Z program and make changes.
Regards,
Nageswar
Similar Messages
-
Using NAST info for selection screen design
Hi
I am doing customization for RFQ printing ( TCODE ME9A)
I want to know can I get the same selection screen as of ME9A using NAST info for my z driver program.
Which function module can be used?
Kindly provide sample code
Regards
HarshadaHi Piyush,
Add the below code in your program.
*Note: you have to take two parameters for files.
If you select check box then p_pc parameter is visible.
if you dont select check box then p_app parameter is visible.
PARAMETERS: p_chk1 AS CHECKBOX USER-COMMAND rusr.
SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME.
PARAMETERS: p_pc LIKE rlgrap-filename MODIF ID abc.
PARAMETERS: p_app LIKE rlgrap-filename MODIF ID def.
SELECTION-SCREEN: END OF BLOCK blk1.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-group1 = 'ABC'.
CLEAR: p_pc, p_app.
IF p_chk1 = 'X'.
screen-active = 1.
ELSE.
screen-active = 0.
ENDIF.
MODIFY SCREEN.
ENDIF.
IF screen-group1 = 'DEF'.
CLEAR: p_pc, p_app.
IF p_chk1 <> 'X'.
screen-active = 1.
ELSE.
screen-active = 0.
ENDIF.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_app.
PERFORM get_fname_app.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_pc.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_pc.
*& Form get_fname_app
text
FORM get_fname_app.
DATA: c_fnh_mask TYPE dxfields-filemask VALUE '.',
search_dir TYPE dxfields-longpath VALUE '/sapglobal/users',
file_path LIKE dxfields-longpath.
CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
EXPORTING
i_location_flag = 'A'
i_server = ' '
i_path = search_dir
filemask = c_fnh_mask
fileoperation = 'R'
IMPORTING
o_path = file_path
EXCEPTIONS
rfc_error = 1
OTHERS = 2.
IF sy-subrc EQ 0.
p_app = file_path.
ENDIF.
ENDFORM. "get_fname_app -
Hello,
I want to use the attribute OBJKY in NAST.But how do I use the structure NAST in my prgoram.Hi shah,
Declare tables : nast.
Then data declaration for nast fields.
use p_vbeln in your select statement.
Then,
FORM populate_nast.
CLEAR: nast-uhrvr ,
nast-cmfpnr,
nast-datvr .
nast-mandt = '320'.
nast-kappl = 'V3'.
nast-kschl = 'ZSMT'.
nast-objky = p_vbeln.
nast-ldest = 'LOCL'.
nast-anzal = 1.
nast-nacha = '1'.
nast-vsztp = '4'.
nast-spras = 'E'.
nast-vstat = '0'.
nast-manue = 'X'.
nast-dimme = ' '.
nast-erdat = sy-datum.
nast-eruhr = sy-uzeit.
nast-usnam = sy-uname.
nast-tdreceiver = sy-uname.
CONCATENATE sy-uzeit+2(4) 'PDF' INTO nast-dsnam.
endform.
Revert back if you need any help.
Re,Manas -
Why do we use NAST /TNAPR tables
Hi,
Can anyone please tell for what purpose we use this tables
With Best Regards
Mamatha.Hi mamatha,
1. NAST
2. This table stores
messages which are output
by various applications.
3. eg. PO is printed, etc
4. Programs like RSNAST
use this table to
scan it and
determine what has to be done furhter
for this mesage !
---> how NAST table is filled?
1. NAST Table is used to Deposit/Collect Messages
produced by various applications.
(These messages can be used further,
to perform specific activities)
2. NAST Table is populated
from various standard Programs
(like migo, po, sales order etc)
via standard function modules.
The function modules INSERTS
a new record into the table
with appropriate information.
3. For further action,
program RSNAST00 is available,
which SCANS the NAST table
and appropriately calls
other function modules for further activity
(Based on the message type, application etc.)
Hope the above helps.
regards,
amit m. -
Initiate print using NAST entries in background
Hi there,
We create an entry on NAST table, generated from an GR/GI individiual slip. Dispatch time is given "1 Send with periodically scheduled job".
Question is, how can we initiate the print function using an own program. The goods received confirmation event occurs, this will initate the print from NAST. After this, the program should start and print NAST entries. So scheduling the job will not work in this scenario. RSNAST00 could not be initated in background such a wise. Also some dialog screens appear for the selected NAST entries.
At the end the output type on the material document should appear with the updated status.
Thanks for your input.HI
GOOD
GO THROUGH THE FOLLOWING DETAILS TO KNOW MORE ABOUT THE NAST
NAST Message Status
http://idocs.de/www5/mySap/PDF/Book_06.pdf
NAST=>
Another common application of a message queue is to collect requests for delayed
processing, e.g. as a batch job during off-peak times. Typically this is done with
print documents like invoices which are due to be sent and thus printed only once
75 per week. The SAP R/3 NAST table is such a message queue and the ABAP
RSNAST00 is the matching handler for it.
The message control is also known as the NAST messaging due to the name of
the database table NAST (germ: NAchrichtenSTeuerung). The mechanism is, that
a requesting application deposits a request message in table NAST and an
interested consumer application eventually picks them up and decides upon an
85 appropriate action. The consuming action is fully independent from the requester.
If the requester expects a response, it has to poll the expected result tables.
The requesting application stores a message in table NAST
A program (usually RSNAST00) polls the table NAST for unprocessed
messages and activates the program that has been dedicated to process that
90 message
The processing function finally finalizes the message by marking the message
as processed and storing status information and eventual log data to it
http://idocs.de/www5/mySap/PDF/Book_06.pdf
THANKS
MRUTYUN -
How to use NAST entry inside a printing program.
Hi,
I am writing a program to print an invoice using smartform.
I am refering NAST-OBJKY to get the invoice No.
My program throwing syntax error that NAST-OBJKY is unknown.
But if I copy a standard printing program, and use it different name, there is no error.
Thank U for Ur time.
Cheers,
Samhi
u r using the correct on but first movethe value to another varable like
VBRK-VBELN
USE THIS INCLUDE IN U R PROGRAM <b>RVADTABL</b>
SAM the reason for u r problem is NAST is not declared in u r program... but in the sandard program they have declared it in the include RVADTABL
Message was edited by:
Naresh Reddy -
Using NAST WITH DATE RANGE THE ZPROGRAM GIVING DUMP
Hi Frineds,
i am writing select query from NAST table for PO created time based on date range more than 10 days the program is giving DUMP in Quality System.. but in Developement system the dump is not coming for same date range.
please see the below code......that i ahve written. help me.
IF SY-SUBRC EQ 0.
SELECT KAPPL
OBJKY
KSCHL
SPRAS
ERDAT
ERUHR
FROM NAST
INTO TABLE IT_NAST
WHERE KAPPL = 'EF' AND
OBJKY IN R_OBJKY AND
KSCHL IN S_KSCHL
AND ERDAT IN S_DATE
AND ERUHR IN S_ERUHR.
SORT IT_NAST BY OBJKY.
DELETE ADJACENT DUPLICATES FROM IT_NAST COMPARING OBJKY.
ENDIF.
ENDIF.
regards,
Vijay
Edited by: Rob Burbank on Jan 21, 2010 12:42 PMHi,
thanks for your mail..
the dump message
There is no help text for this dump
Either the text was inadvertently deleted or the release of
the kernel differs from the release of the database
Refer to the Note system for further information on this dump.
Regards,
Vijay -
How to write - Perform using variable changing tables
hi Gurus,
I am facing an issue while writing a perform statement in my code.
PERFORM get_pricing(zvbeln) USING nast-objky
CHANGING gt_komv
gt_vbap
gt_komp
gt_komk.
in program zvbeln :-
FORM get_pricing USING p_nast_objky TYPE nast-objky
tables p_gt_komv type table komv
p_gt_vbap type table vbapvb
p_gt_komp type table komp
p_gt_komk type table komk.
BREAK-POINT.
DATA: lv_vbeln TYPE vbak-vbeln.
MOVE : p_nast_objky TO lv_vbeln.
CALL FUNCTION '/SAPHT/DRM_ORDER_PRC_READ'
EXPORTING
iv_vbeln = lv_vbeln
TABLES
et_komv = p_gt_komv
et_vbap = p_gt_vbap
et_komp = p_gt_komp
et_komk = p_gt_komk.
ENDFORM. " GET_PRICING
But its giving an error . please let me know how i can solve this .Hi,
Please incorporate these changes and try.
perform get_pricing(zvbeln) TABLES gt_komv gt_vbap gt_komp gt_komk
USING nast-obky.
in program zvblen.
Form get_pricing TABLES p_gt_komv type table komv
p_gt_vbap type table vbapvb
p_gt_komp type table komp
p_gt_komk type table komk
USING p_nast_objky TYPE nast-objky.
REST OF THE CODE SAME.
End form.
Note : Please check lv_vbeln after the move statement.
Hope this will help you.
Regards,
Smart Varghese -
Printing Chinese Characters on Labels using ZEBRA
Dear all,
Could someone tell me how to Print Chinese characters on labels using ZEBRA Printer.
Thanks & Regards,
Joseph.Hi Joseph,
How were u able to resolve your issue on Chinese font printing using Zebra? This is because I'm supposed to print Chinese texts & data using Zebra label printer. The problem is, inspite of using the Chinese font residing in the printer's memory card, i am not getting any output whenever i run a standard SAP report (VL74) calling a customized saprscipt report. Please help check my codes below. Also, I'm not sure of the command ^A1B, if it is still needed everytime i try to print a text, since i already used the command ^CW1,B:MSUNG.FNT.
I placed them in the Main area of Sapscript. Thanks in advance.
PERFORM 'GET_MORE_DATA' IN PROGRAM 'ZTEST'
USING &NAST-KSCHL&
USING &VBPLK-VENUM&
USING &VBPLK-VPOBJKEY&
USING &VBPLA-KUNWE&
CHANGING &GF_MAKTX&
CHANGING &GF_VEMNG&
CHANGING &GF_KDMAT&
CHANGING &GF_VBELN&
CHANGING &GF_MATNR&
ENDPERFORM
/:NEW-PAGE
/ ^XA
/ ^CW1,B:MSUNG.FNT
/ DFZ5L3_L-1FS
/ ^PRC
/ LH0,0FS
/ ^LL1981
/ ^MD0
/ ^MNY
/ LH0,0FS
/ FO700,649A1B,48,0FRFN999^FS
/ FO1084,309A1B,46,0CI0FRFN998FS
/ FO315,330A1B,46,0CI0FRFN997FS
/ FO459,1351A1B,46,0CI0FRFN996FS
/ FO829,396A1B,46,0CI0FRFN995FS
/ FO54,1777A1B,46,0CI0FRFD中文 1FS
/ FO186,1774A1B,46,0CI0FRFD中文 2FS
/ FO318,1774A1B,46,0CI0FRFD中文 3FS
/ FO315,814A1B,46,0CI0FRFD中文 4FS
/ FO456,1777A1B,46,0CI0FRFD中文 5FS
/ FO12,18GB1162,1942,6^FS
/ FO147,18GB135,1942,6^FS
/ FO411,18GB135,1942,6^FS
/ FO660,18GB135,1942,6^FS
/ FO916,18GB135,1942,6^FS
/ ^XZ
/:NEW-PAGE
/ ^XA
/ ^XFZ5L3_L-1.ZPL
/ FN999FD&GF_MAKTX&^FS
/ FN998FD&GF_VEMNG&^FS
/ FN997FD&GF_KDMAT&^FS
/ FN996FD&GF_VBELN&^FS
/ FN995FD&GF_MATNR&^FS
/ ^PQ1,0,1,N
/ ^XZ
/ ^FX End of job -
Finding out Idoc number of the Invoice List
Hi!
how to find out Idoc numberr if I have number of Invoice List?
For example, I have number of Invoice List for checking it in tcode VF22, but how to get Idoc number of the Invoice List in order to check it in WE02?
Will reward,
MindaugasHi,
Use NAST with the invoice to get the latest record for that output type..
use the table CMFP to get the IDOC number..The combination is
NAST-CMFPNR = CMFP-NR..
Then in the column CMFP-MSGV1 you can find the idoc number
<b>Reward points</b>
Regards -
Driver program is not getting triggered
Hi Experts ,
I have assigned driver program and form under the application ME to the output type WE01 and WE02 and WE03 .But my program is not getting triggered.
How to check whether the Form entry is getting or not ?
i have also tried putting the break point in the program.
Please suggest .
ThanksHi Kartik,
Thanks a lot !
Update for you ......
By refereing std prog i have written the form routine like below.
FORM entry USING ent_retco ent_screen.
xscreen = ent_screen.
CLEAR ent_retco.
PERFORM check_input USING nast-objky.
ent_retco = retco.
perform fetch_data.
perform print_control.
ENDFORM.
form check_input using objky.
nast_key = objky.
select single werks from t001w into t001w-werks where werks = NAST_KEY-p_werks.
if sy-subrc ne 0.
message 'ENTER VALID PLANT' type 'E'.
endif.
endform. "check_input
But i am not able to debug the code...
Break point is not triggering the code. -
Output type - Special function 8 - ARCHIV_CONNECTION_INSERT
Hi gurus,
I created a new Output Type with special function 8 called ZPDF in transaction NACE with application MR (invoice verification) and I added to that Output Type ZPDF our custom program called ZXXX_ARCHIVE_LINK in order to post into the MM invoice, a PDF who cames from the SD inovoice.
The SD invoice number is recorder into the field "Referece" in the MM invoice.
So, the program should (through the output type and the program):
1. Read the MM invoice number generated (NAST table into NAST-OBJKY).
2. Enter to table RBKP with MM invoice number RBKP-BELNR and get the SD invoice number: RBKP-XBLNR.
3. Enter with SD invoice number XBLNR to table TOA01-OBJECT_ID And get TOA01-ARC_DOC_ID.
4. Call FM ARCHIV_CONNECTION_INSERT.
The problem here is when I post a MM inovice in MIRO transaction the system through the condition record added the ZPDF Output Type but don´t read the program ZMIC_INVOICE_PDF_ARCHIVE_LINK added to that output type. The status of the output type is green (but without any processing log). I checked the setting for the Output Type like 100 times and everything seems to be OK.
Please this is very urgent. Any advice?
I don´t know why SAP don´t call the program. I think the ABAP code is wrong:
REPORT ZXXX_ARCHIVE_LINK.
Table Declaration
TABLES: NAST, " Message Status
CMFP, " Storage Structure for Errors Collected
EDIDS, " Status Record (IDoc)
VBRK, " Billing Document: Header Data
TOA01. " Link table 1
TYPES: BEGIN OF TY_RBKP,
BELNR TYPE RE_BELNR, " Document number of an invoice document
XBLNR TYPE XBLNR1, "SAEOBJID, " Reference Document Number
END OF TY_RBKP.
TYPES: BEGIN OF TY_TOA01,
OBJECT_ID TYPE SAEOBJID, " SAP ArchiveLink: Object ID (object identifier)
ARC_DOC_ID TYPE SAEARDOID, " SAP ArchiveLink: Document ID
END OF TY_TOA01.
Data Declaration
DATA: WA_BELNR TYPE RE_BELNR ,
WA_ARC_DOC_ID TYPE TY_TOA01 , "-ARC_DOC_ID,
WA_SAP_OBJECT LIKE SAPB-SAPOBJID," TYPE TOAOM-SAP_OBJECT ,
ARC_DOC_ID TYPE TOAV0-ARC_DOC_ID,
GT_RBKP TYPE STANDARD TABLE OF TY_RBKP , "WITH HEADER LINE,
GT1_RBKP TYPE STANDARD TABLE OF TY_RBKP, " WITH HEADER LINE,
GT_ARC_DOC_ID TYPE STANDARD TABLE OF TY_TOA01, " -ARC_DOC_ID,
WA1_RBKP TYPE TY_RBKP ,
WA_RBKP TYPE TY_RBKP.
DATA: WA1_OBJECT_ID TYPE SAEOBJID.
DATA: WA_OBJKY TYPE NA_OBJKEY,
WA1_OBJKY TYPE RE_BELNR.
FORM entry USING ent_retco ent_screen.
CLEAR ent_retco.
PERFORM ARCHIV_CONNECTION_INSERT USING nast-objky ent_retco.
ENDFORM. "entry
FORM ARCHIV_CONNECTION_INSERT USING objky returncode.
* Select Reference Document Number from RBKP table
SELECT BELNR XBLNR
FROM RBKP
INTO TABLE GT_RBKP
WHERE BELNR = objky . " .WA1_OBJKY .
IF SY-SUBRC EQ 0 .
LOOP AT GT_RBKP INTO WA_RBKP.
WA1_OBJECT_ID = WA_RBKP-XBLNR .
CONCATENATE WA1_OBJECT_ID '%' INTO WA1_OBJECT_ID .
WA_SAP_OBJECT = WA_RBKP-BELNR .
SELECT OBJECT_ID
ARC_DOC_ID
FROM TOA01
INTO TABLE GT_ARC_DOC_ID
WHERE OBJECT_ID LIKE WA1_OBJECT_ID.
IF SY-SUBRC EQ 0 .
READ TABLE GT_ARC_DOC_ID INTO WA_ARC_DOC_ID INDEX 1.
ARC_DOC_ID = WA_ARC_DOC_ID-ARC_DOC_ID.
WA_SAP_OBJECT = WA_ARC_DOC_ID-OBJECT_ID.
ENDIF.
CALL Function Module:Link table operations
CALL FUNCTION 'ARCHIV_CONNECTION_INSERT'
EXPORTING
ARCHIV_ID = 'Z0'
ARC_DOC_ID = ARC_DOC_ID
AR_DATE = SY-DATUM
AR_OBJECT = 'MMILOGINV'
DEL_DATE = ' '
MANDANT = SY-MANDT
OBJECT_ID = WA_SAP_OBJECT
SAP_OBJECT = 'BUS2081'
DOC_TYPE = 'PDF'
BARCODE = ' '
EXCEPTIONS
ERROR_CONNECTIONTABLE = 1
OTHERS = 2
IF SY-SUBRC 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CLEAR: WA_RBKP.
ENDLOOP.
ENDIF.
ENDFORM.Hi,
Use
You can process a message immediately by updating the application document or you can process it at a later time. For later processing you must use the report program RSNAST00 or a corresponding application function.
The individual possibilites are:
Time 1: The message is processed through report program RSNAST00. This report program can be scheduled periodically or started manually.
Time 2: As in time 1, but the message contains an earliest processing date and a requested processing time. The message is ignored by report program RSNAST00 before the requested date.
Time 3: The message is selected and processed by application specific programs. Processing can take place online or in the background.
Time 4: The message is processed when the application document is saved. No further processing of the message is necessary.
Kapil -
Runtime error in scripts : CX_SY_DYN_CALL_PARAM_MISSING
HI guys i am trying to print some values in sapscripts .
the thing is i am able to see the print preview and the values are showing up but when i click on the back button the system throws the following dump :
Runtime Errors PERFORM_PARAMETER_MISSING
Except. CX_SY_DYN_CALL_PARAM_MISSING
Short text
Missing parameter with PERFORM.
What happened?
Error in the ABAP Application Program
The current ABAP program "RSNAST00" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_DYN_CALL_PARAM_MISSING', was
not caught in
procedure "PROGRAMM_AUFRUFEN" "(FORM)", nor was it propagated by a RAISING
clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
A PERFORM was used to call the routine "SHOW_VAL" of the program "Z_SHOWDATA".
The current call contains 2 actual parameter(s),
but the routine "SHOW_VAL" expects 4 parameters.
in the script this is the perform i ve written :
/: PERFORM SHOW_VAL IN PROGRAM Z_SHOWDATA
/: USING &NAST-OBJKY&
/: CHANGING &VARIABLE4&
/: CHANGING &VARIABLE5&
/: CHANGING &VARIABLE6&
/: ENDPERFORM
and my show_val goes as follows:
PROGRAM Z_SHOWDATA.
data: var1 like NAST-OBJKY,
var3 type P decimals 2, "string , "decimals 2, " decimals 2,
var4 type p decimals 2, "string , "decimals 2, " decimals 2,
var5 type P decimals 2, "string, " decimals 2, "decimals 2,
var6 type p decimals 2. "string .
data: itab type ekpo occurs 0 with header line .
form show_val tables intab structure itcsy
outab structure itcsy .
import sapscript parameters
read table intab with key 'NAST-OBJKY'.
check sy-subrc eq 0.
var1 = intab-value.
get Data
select single * into itab
from ekpo where EBELN eq var1.
select single *
from ekpo
into itab
where ebeln eq var1.
var3 = itab-netwr * 16 / 100.
var4 = var3 * 2 / 100.
var5 = var3 / 100.
var6 = itab-netwr + var4 + var5.
export sapscript parameters
READ TABLE outab WITH KEY 'VARIABLE4'.
CHECK sy-subrc EQ 0.
MOVE var4 TO outab-value.
condense outab-value.
append outab .
READ TABLE outab WITH KEY 'VARIABLE5'.
CHECK sy-subrc EQ 0.
MOVE var5 TO outab-value.
condense outab-value.
append outab .
READ TABLE outab WITH KEY 'VARIABLE6'.
CHECK sy-subrc EQ 0.
MOVE var6 TO outab-value.
condense outab-value.
append outab .
endform.
I am not able to catch the error in the code as all the values that i ve passed in the perform are successfully entered in the tables that i ve passed in my form . and the values are coming on the layout too
and the dump comes after i click on the back button after seeing the preview . Please help.
Vikram.
Please helptry like this and let me know if dump still exists, later we can do further analysis.
PROGRAM Z_SHOWDATA.
<b>*data: var1 like NAST-OBJKY,
*var3 type P decimals 2, "string , "decimals 2, " decimals 2,
*var4 type p decimals 2, "string , "decimals 2, " decimals 2,
*var5 type P decimals 2, "string, " decimals 2, "decimals 2,
*var6 type p decimals 2. "string .
data: var1(30),
var3 (30),
var4(30),
var5(30),
var6(30).</b>
data: itab type ekpo occurs 0 with header line .
form show_val tables intab structure itcsy
outab structure itcsy .
import sapscript parameters
read table intab with key 'NAST-OBJKY'.
check sy-subrc eq 0.
var1 = intab-value.
get Data
select single * into itab
from ekpo where EBELN eq var1.
select single *
from ekpo
into itab
where ebeln eq var1.
var3 = itab-netwr * 16 / 100.
var4 = var3 * 2 / 100.
var5 = var3 / 100.
var6 = itab-netwr + var4 + var5.
export sapscript parameters
READ TABLE outab WITH KEY 'VARIABLE4'.
CHECK sy-subrc EQ 0.
MOVE var4 TO outab-value.
condense outab-value.
append outab .
READ TABLE outab WITH KEY 'VARIABLE5'.
CHECK sy-subrc EQ 0.
MOVE var5 TO outab-value.
condense outab-value.
append outab .
READ TABLE outab WITH KEY 'VARIABLE6'.
CHECK sy-subrc EQ 0.
MOVE var6 TO outab-value.
condense outab-value.
append outab .
endform.
Regards,
SaiRam -
Repeat Print of purchase order
I have one requirment if user reprint of PO then Duplicate word should be display at output.
I want to know which field of NAST is flag for Repeat print. I am using NAST-VSTAT is it correct??
Or I have to use NAST-AENDE.
PL let me knowFAQ, please search for available information before posting.
Thread locked.
Thomas -
PO Output Type / Processing Routine Problem
Hello everyone,
I cannot seem to find any reference to the problem described below.
I have encountered a problem by migrating from SAPFM06P to SAPLMEDRUCK during an ECC 5.0 upgrade, at a client where I am under contract as an ABAP Developer.
Here is some background to the situation. The client is currently migrating from version 4.6C to 5.0 and thought it was a good idea to upgrade their purchase order messaging programs from the outdated SAPFM06P, which was utilized in version 3.x, to the newer program SAPLMEDRUCK implemented for use in version 4.6.
Specifically, Message Output (ME9F) controls the output of purchase order messages in foreground, when the purchase order message is saved and the "further Data option" of the PO message contains "requested processing" equal to the value of "send with application own transaction". This way, the actual messaging can be controlled in foreground and "breakpoints" can be set to display tables and fields. Behind the scenes, the message status program RSNAST00 is executed by ME9F program RM06ENDR_ALV. During this execution, it locates the message (NAST) record from the purchase order and the (TNAPR) configuration, which links the output type to the ABAP print program and SAPscript layout set. The specific problem is: in RSNAST00, the external call perform "PERFORM (TNAPR-RONAM) in PROGRAM (TNAPR-PGNAM) USING RETURNCODE US_SCREEN IF FOUND" does not pass NAST information to the called program (TNAPR-PGNAM). I know no NAST table information is passed because I set a break-point on the perform and single step to the print program. Therefore, the purchase order is unknown by the print program (TNAPR-PGNAM) and results in an error and no purchase order print is provided. Needless to say, this was tested with a new "Z" version of SAPLMEDRUCK. So, I changed the program name (output type processing routine) in configuration to SAPLMEDRUCK, but there again the NAST information is not passed to the print program from RSNAST00. Ironically, I reverted back to the older "z" version of SAPFM06P and NAST and TNAPR information is passed to the print program thru the external call perform quoted above. I prefer to not modify the SAP original code for RSNAST00, which is used in many other applications.
One other note, I had previously performed this maneuver on one different occasion with very successful results.
Has anyone ever encountered this problem in a 5.0 environment (running Windows NT and MSSQL and SAP BASIS 6.4).
I know this is long winded, but I wanted to explain the background of the entire situation.
Any and all help would be appreciated. Thanks in advance,Dave,
Your entry points (like form ENTRY_NEU) should remain in your current version of SAPFM06P. Change that form to reflect the function calls in the new SAPLMEDRUCK form (ENTRY_NEU) (calls to ME_READ_PO_FOR_PRINTING and ME_PO_PRINT.
Look at the example below:
Here is the form in your old (Z) version of SAPFM06P:
FORM ENTRY_NEU USING ENT_RETCO ENT_SCREEN.
XSCREEN = ENT_SCREEN.
IF NAST-AENDE EQ SPACE.
XDRUVO = '1'.
ELSE.
XDRUVO = '2'.
ENDIF.
CLEAR: XFZ, XOFFEN, XLMAHN, XLPET.
*- Anstoß Verarbeitung -
CLEAR ENT_RETCO.
PERFORM LESEN USING NAST.
MOVE RETCO TO ENT_RETCO.
ENDFORM.
Here is form entry_neu in your new (Z) version of SAPFM06P:
INCLUDE FM06PE02 *
form entry_neu using ent_retco ent_screen.
data: l_druvo like t166k-druvo,
l_nast like nast,
l_from_memory,
l_doc type meein_purchase_doc_print.
clear ent_retco.
if nast-aende eq space.
l_druvo = '1'.
else.
l_druvo = '2'.
endif.
call function 'ME_READ_PO_FOR_PRINTING'
exporting
ix_nast = nast
ix_screen = ent_screen
importing
ex_retco = ent_retco
ex_nast = l_nast
doc = l_doc
changing
cx_druvo = l_druvo
cx_from_memory = l_from_memory.
check ent_retco eq 0.
call function 'ME_PRINT_PO'
exporting
ix_nast = l_nast
ix_druvo = l_druvo
doc = l_doc
ix_screen = ent_screen
ix_from_memory = l_from_memory
ix_toa_dara = toa_dara
ix_arc_params = arc_params
ix_fonam = tnapr-fonam "HW 214570
importing
ex_retco = ent_retco.
endform.
Remember, the form should be in the Z version of SAPFM06P - not the Z version of SAPLMEDRUCK. Make sure the configuration (TNAPR) has the SAPFM06P program name and entry point.
It should work. Let me know how it goes.
Rick
Maybe you are looking for
-
Error while invoking external WS call from BPEL2.0
Hi, I have a BPEL process from where I am making external WS call. I have the WSDL file & the Endpoint URL for the external WS. So,I have follow the below steps at BPEL editor. 1. Synchronous BPEL process[it includes 'receiveInput' & 'replyOutput'].
-
IPhone no longer connects to my computer over local network through apps
I've been trying to fix this for months. I've worked with technology and Apple computers for three years. I am by no means an expert but you can believe me when I say I've tried all the basics. I first noticed the problem using FullControl. I liked t
-
Customer Sevice , warranty master creation
Dear All Experts, 1. I am creating a task for an equipment in IA01 to which i have created a service master and a agreement, to which i have created an equipment and asingned task to that. 2.I have created a single cycle plan in which i have called
-
Out of Sync Audio after capturing video
I have a video that I captured that the audio is in sync during the capture by using audo preview but, when view it in the view window, the words are out of sync from her lips. The video was recorded on my sony pd150, 48k audio, and Im using prostudi
-
hi frndz.. I am trying LSMW - BAPI method for PO creation. in have done 7 steps upto "assign file" But system is not reading line item data. it is reading header data only... I want to knw, what should i have in my file, that system will read both da