Dunning report driver program
Hi,
I see a dunning sap script z_asia_dunning assigned in Dunning procedure. I am interested in knowing the driver program for this dunning script.
I searched in SDN and failed to get this information. Please let me know how to get a driver program for dunning report.
Thanks in advance
Sudhaker
ok it IS possible
and well the table where those connections of driver programs and form are stored is (i hope you learned that by now from the earlier posts) TNAPR.
you are a developer, so it´s not really neccesary for you to have a transaction to chance some record in a database table.
I would propose the TA SE16N with the fcode &sap_edit.
then just fill in your new (copied) driver program and save
Similar Messages
-
Driver program for the Dunning letter SAP Script
Hello All,
Can someone please tell me how to find the "Driver program for the Dunning letter SAP Script". I checked the Transaction OB96 but I dont find any Dunning scripts here i.e., the standard Dunning letter SAP Script F150_DUNN_01.
Is there any Transaction like NACE of logistics for FI module to find the Driver programs. My requirement is to find the Driver program for the Dunning letter SAP Script and have a new Driver program instead of the standard SAP given driver program. Example is in transaction NACE we can change the driver program for Invoice like from RVADIN01 to ZRVADIN01.
Thanks and Regards,
SNK.Yes you can, using FIBF, change the FM associated with event 1720 like when SapScript is replaced with SmartForms. Look at [Define Dunning Forms (with SAP Smart Forms)|http://help.sap.com/saphelp_46c/helpdata/es/7d/c7a0a535e1d311ba4d0800060d888b/content.htm] for reference.
But notice
- PRINT_DUNNING_NOTICE call many FM of the same FG which share the same global data area.
- During following upgrades of your system you will have to manage a copy of standard.
Regards,
Raymond -
Standard driver programs,output type ,scripts,smartforms for SD reports
hi experts,
Can any one list all the standard driver programs,output types ,scripts,smartforms for SD reports.
maniHi,
Check this out
NACE
You can track the form and the print program used for that form
The Tcode NACE is used to link the Standard SAP forms (SCRIPTFORM or SMARTFORM) or the customized form or the new form to its respective print programs. Also the output types, Form entry are linked with their forms and print programs. In short term, i can tell u that configuration or customization of forms to print programs, assigning output types, form entry to the forms are done using this Tcode.
NACE is used to create output type while creating the output type you will mention forms, and driver program.
that will be maintained in the table TNAPR.if you create the output type using NACE then it will be automatically visible in table NAST and TNAPR.
so check in NAST, TNAPR table
http://help.sap.com/saphelp_erp2005/helpdata/en/c8/1989fe43b111d1896f0000e8322d00/frameset.htm
Condition records in NACE?
and
NACE is used for message control customizing.
Take a look at the following link
http://help.sap.com/saphelp_nw04/helpdata/en/c8/198a1843b111d1896f0000e8322d00/frameset.htm
and also
NACE is used for message control customizing.
Take a look at the following link
http://help.sap.com/saphelp_nw04/helpdata/en/c8/198a1843b111d1896f0000e8322d00/frameset.htm
If it helps reward with points.. -
Calling standard printer driver program RVADOR01 from ALV report
I have ALV report (Sales order documents) and one of columns in report is icon type with print preview link (hotspot). When user press icon, I would like to call standard print program RVADOR01 (actually we have custom Z_RVADOR01 and custom smartform which are working fine when using Document -> Output in VA03) to display print preview. I don't know how to call (trigger) print driver routine and pass needed parameters to it (ex. SO number).
MarkoActually I did that. But then you are at least three clicks away from print preview screen. For testing purpose I've created custom smartform and run it from my report. It is working like I want. Now, instead of my procedure I want to run standard printer driver program with needed parameters. I believe that all it needs is document number (vbeln) and all the rest is already there, program, smatform... I just don't know how to use it (ex. pass parameters).
I know I maybe complicating too much but I am ABAP beginner and want to learn as much as possible. Thank you anyway! -
Modifying Dunning Report F150_DUNN_01 for Tcode F150
Hi Guys,
I need to modify the standard Dunning Report F150_DUNN_01. I copied the standard onw to Zform. I need to add windows. And am calling external subroutimes in that script. Is it possible to transfer internal table between script and external subroutine with using and changing parameters? And also please tell me how to proceed customizing.
Thanks in Advance.
Regards,
HemanthHi Hemanth,
Customizing:
You can go the Transaction FBMP and add your Form name as well as the Print Program name.
These would be call when ever you run the dunning Program.
From the Layoutset yuo can use the PERFORM subroutine using and changing parameters which would have the Structure ITCSY.
The Form then needs to be present in the Driover Prpgram.
Please let me know if this is useful.
Regards,
Deepak -
Hi Folks,
Can any body post the sample driver program of smart form? I need the same to call a smartform which created.
thanks
SiddarthHi,
Check this....
*& Report ZSEND_PDF_EMAIL
REPORT zsend_pdf_email.
DATA: itcpo LIKE itcpo,
tab_lines LIKE sy-tabix.
Variables for EMAIL functionality
DATA: maildata LIKE sodocchgi1.
DATA: mailpack LIKE sopcklsti1 OCCURS 2 WITH HEADER LINE.
DATA: mailhead LIKE solisti1 OCCURS 1 WITH HEADER LINE.
DATA: mailbin LIKE solisti1 OCCURS 10 WITH HEADER LINE.
DATA: mailtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE.
DATA: mailrec LIKE somlrec90 OCCURS 0 WITH HEADER LINE.
DATA: solisti1 LIKE solisti1 OCCURS 0 WITH HEADER LINE.
PERFORM send_form_via_email.
FORM SEND_FORM_VIA_EMAIL *
FORM send_form_via_email.
CLEAR: maildata, mailtxt, mailbin, mailpack, mailhead, mailrec.
REFRESH: mailtxt, mailbin, mailpack, mailhead, mailrec.
Creation of the document to be sent File Name
maildata-obj_name = 'TEST'.
Mail Subject
maildata-obj_descr = 'Subject'.
Mail Contents
mailtxt-line = 'Here is your file'.
APPEND mailtxt.
Prepare Packing List
PERFORM prepare_packing_list.
Set recipient - email address here!!!
mailrec-receiver = '[email protected]'.
mailrec-rec_type = 'U'.
APPEND mailrec.
Sending the document
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = maildata
put_in_outbox = 'X'
TABLES
packing_list = mailpack
object_header = mailhead
contents_bin = mailbin
contents_txt = mailtxt
receivers = mailrec
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
operation_no_authorization = 4
OTHERS = 99.
commit work.
ENDFORM. "SEND_FORM_VIA_EMAIL
Form PREPARE_PACKING_LIST
FORM prepare_packing_list.
CLEAR: mailpack, mailbin, mailhead.
REFRESH: mailpack, mailbin, mailhead.
DESCRIBE TABLE mailtxt LINES tab_lines.
READ TABLE mailtxt INDEX tab_lines.
maildata-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( mailtxt ).
Creation of the entry for the compressed document
CLEAR mailpack-transf_bin.
mailpack-head_start = 1.
mailpack-head_num = 0.
mailpack-body_start = 1.
mailpack-body_num = tab_lines.
mailpack-doc_type = 'RAW'.
APPEND mailpack.
Creation of the document attachment
This form gets the OTF code from the SAPscript form.
If you already have your OTF code, I believe that you may
be able to skip this form. just do the following code, looping thru
your SOLISTI1 and updating MAILBIN.
PERFORM get_otf_code.
LOOP AT solisti1.
MOVE-CORRESPONDING solisti1 TO mailbin.
APPEND mailbin.
ENDLOOP.
DESCRIBE TABLE mailbin LINES tab_lines.
mailhead = 'TEST.OTF'.
APPEND mailhead.
Creation of the entry for the compressed attachment
mailpack-transf_bin = 'X'.
mailpack-head_start = 1.
mailpack-head_num = 1.
mailpack-body_start = 1.
mailpack-body_num = tab_lines.
mailpack-doc_type = 'OTF'.
mailpack-obj_name = 'TEST'.
mailpack-obj_descr = 'Subject'.
mailpack-doc_size = tab_lines * 255.
APPEND mailpack.
ENDFORM. "PREPARE_PACKING_LIST
Form GET_OTF_CODE
FORM get_otf_code.
DATA: BEGIN OF otf OCCURS 0.
INCLUDE STRUCTURE itcoo .
DATA: END OF otf.
DATA: itcpo LIKE itcpo.
DATA: itcpp LIKE itcpp.
data control type SSFCTRLOP.
data output type SSFCOMPOP.
data otfdata type SSFCRESCL.
control-getotf = 'X'.
OUTPUT-TDDEST = 'Lp01'.
control-DEVICE = 'LOCL'.
control-NO_DIALOG = 'X'.
CLEAR itcpo.
itcpo-tdgetotf = 'X'.
CALL FUNCTION '/1BCDWB/SF00000279'
EXPORTING
CONTROL_PARAMETERS = control
OUTPUT_OPTIONS = output
USER_SETTINGS = ' '
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO = otfdata
JOB_OUTPUT_OPTIONS =
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5.
IF sy-subrc <> 0.
ENDIF.
Move OTF code to structure SOLI form email
CLEAR solisti1. REFRESH solisti1.
LOOP AT otfdata-otfdata into otf.
solisti1-line = otf.
APPEND solisti1.
ENDLOOP.
ENDFORM. "GET_OTF_CODE
Regards,
Sankar -
Hi all,
I am seaching for Driver program for FORM16 SMART FORM .There is one driver program for sap script , for smart form J_1IEWT_CERT IS there any driver program .
Can any one please guide me how to proceed?
thanks in advance.
Regards,
suresh.Hi, i recently solved the j1incert issue.
Can i know whether are you trying to change to the new tds format for form 16 (new format on 2010)?
If so please let me know. i can guide you.
[Click here|https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=1522189] for new
(note you need to have market place login) tds certificate format (2010)
oss note: 1522189
earlier the form used to be in script but now changed into smartform.
For the driver program of form 16 in se38 please enter report name as J_1IEWT_CERT . and click on display
Regards,
koolspy. -
Can we change the value of a variable in the driver program from sapscript?
Hello Experts,
I am currently developing a form wherein I need to change the value of a variable defined in the standard
driver program through the sapscript form. Unfortunately, I cannot customize this standard program since this is used by many other
subsidiaries. So, is there anyway that I can change a variable defined in the driver program via sapscript?
I tried to use a PERFORM to change its value but it is not working.
I hope you can help me guys. Thank you and take care!SAP SCRIPT:
/: PERFORM GET_ATTNDEE_INFO IN PROGRAM ZHR_TRNG
/: USING &PPVAR-EOBJD&
/: CHANGING &ATTND&
/: ENDPERFORM
Executable Prog.:
REPORT ZHR_TRNG.
FORM GET_ATTNDEE_INFO TABLES IN_PAR STRUCTURE ITCSY
OUT_PAR STRUCTURE ITCSY.
DATA : LOC_CODE(8),
WF_NAME LIKE PA0001-ENAME, "----Location Code
WF_SOBID LIKE HRP1001-SOBID. "----Business Event Code
DATA: BEGIN OF ITAB_ECODE OCCURS 0,
ECODE(8),
END OF ITAB_ECODE.
DATA: NAME1 TYPE STRING.
READ TABLE IN_PAR INDEX 1.
LOC_CODE = IN_PAR-VALUE.
SELECT SOBID FROM HRP1001 INTO WF_SOBID
WHERE OBJID = LOC_CODE AND OTYPE ='E' AND PLVAR = '01' AND SCLAS = 'P'.
APPEND WF_SOBID TO ITAB_ECODE .
ENDSELECT.
IF SY-SUBRC = 0.
LOOP AT ITAB_ECODE.
SELECT SINGLE ENAME FROM PA0001 INTO WF_NAME
WHERE PERNR = ITAB_ECODE-ECODE ." AND ENDDA >= '31.12.9999' .
CONCATENATE 'Mr ' WF_NAME ',' NAME1 INTO NAME1.
IF SY-SUBRC = 0 .
OUT_PAR-NAME = 'ATTND'.
OUT_PAR-VALUE = NAME1.
APPEND OUT_PAR.
ENDIF.
ENDLOOP.
ENDIF.
ENDFORM. "GET_USR_INFO -
Form doesn't exists after calling driver program
Hi,
I had created a invoice form, and i called through driver program in se38.After executing i m getting as 'Form doesn't exists'.
'zinvoice1' is the name of the smartform.
Code as follows:
REPORT ZINVOICE1.
tables: kna1,vbrp,vbrk.
parameters: p_kunnr like vbrk-kunag,
p_vbeln like vbrk-vbeln.
data : fm_name type rs38l_fnam.
data: t_vbrp like standard table of vbrp,
t_vbrk like standard table of vbrk.
data: fs_kna1 type kna1,
fs_vbrk like line of t_vbrk,
fs_vbrp like line of t_vbrp.
start-of-selection.
select single * from kna1 into fs_kna1
where kunnr eq p_kunnr.
select * from vbrk into table t_vbrk
where kunag eq p_kunnr and vbeln eq p_vbeln.
select * from vbrp into table t_vbrp for all entries in t_vbrk
where vbeln = t_vbrk-vbeln.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'zinvoice1'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = fm_name
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION '/1BCDWB/SF00000050'
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS =
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS =
USER_SETTINGS = 'X'
IM_FS_KNA1 = fs_kna1
IM_T_VBRP = t_vbrp
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO =
JOB_OUTPUT_OPTIONS =
TABLES
IM_T_VBRK = t_vbrk
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZINVOICE1'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = fm_name
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3
IF SY-SUBRC 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION fm_name
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS =
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS =
USER_SETTINGS = 'X'
IM_FS_KNA1 = fs_kna1
IM_T_VBRP = t_vbrp
IMPORTING
DOCUMENT_OUTPUT_INFO =
JOB_OUTPUT_INFO =
JOB_OUTPUT_OPTIONS =
TABLES
IM_T_VBRK = t_vbrk
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5
IF SY-SUBRC 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF. -
Script not displayed threw driver program
script is not displayed threw driver program i have only one window n one main window n only text in tahat still its not displayed n gives error " Form zasi_sript4 language EN is not active a
no errors". code is below
*& Report ZASI_SRIPT4P
REPORT ZASI_SRIPT4P.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
FORM = 'zasi_sript4'.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'START_FORM'
EXPORTING
FORM = 'zasi_sript4'.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E1 '
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E2'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'window1'
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
CALL FUNCTION 'END_FORM'
IMPORTING
RESULT = zasi_sript4p.
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SPOOL_ERROR = 3
CODEPAGE = 4
OTHERS = 5
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
OTFDATA =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 4
CODEPAGE = 5
OTHERS = 6
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.Hi,
here you no need to write start form and end form
REPORT ZASI_SRIPT4P.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
FORM = 'zasi_sript4'. " change here
IF SY-SUBRC 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E1 '
* FUNCTION = 'SET'
* TYPE = 'BODY'
WINDOW = 'MAIN'
IF SY-SUBRC 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E2'
* FUNCTION = 'SET'
* TYPE = 'BODY'
WINDOW = 'window1' "is this same window or different window? if same window ,give name as 'MAIN'
IF SY-SUBRC 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
CALL FUNCTION 'CLOSE_FORM'
* IMPORTING
* RESULT =
* RDI_RESULT =
** TABLES
** OTFDATA =
** EXCEPTIONS
* UNOPENED = 1
* BAD_PAGEFORMAT_FOR_PRINT = 2
* SEND_ERROR = 3
* SPOOL_ERROR = 4
* CODEPAGE = 5
* OTHERS = 6
IF SY-SUBRC 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
with regards
Naresh -
How to Call Total Amount field from t.code - PC00_M40_ANN in driver program
Hi,
There is a standard Transaction for Payroll Annual display - PC00_M40_ANN. From this transaction we can see the Pension Amount month wise and in Totals as well as.
In my report, we want to call Total Amount (from T.Code PC00_M40_ANN).
For Ref., I have design a Smartform with its driver program. In driver program i required this Value...
Plz guide..Hi,
Please check the below code ....
Declare variables , structures .....
call function 'CU_READ_RGDIR'
exporting
persnr = pernr-pernr <--- pass the pernr
importing
molga = w_molga
tables
in_rgdir = itrgdir
exceptions
no_record_found = 1
others = 2.
if not w_molga is initial.
call function 'CD_READ_LAST'
exporting
begin_date = pn-begda
end_date = pn-endda
importing
out_seqnr = w_seqnr
tables
rgdir = itrgdir
exceptions
no_record_found = 1
others = 2.
endif.
if itrgdir is initial.
continue.
else.
select single relid from t500l into w_relid where molga = w_molga.
call function 'PYXX_READ_PAYROLL_RESULT'
exporting
clusterid = w_relid
employeenumber = pernr-pernr
sequencenumber = w_seqnr
read_only_international = 'X'
changing
payroll_result = itresult
exceptions
illegal_isocode_or_clusterid = 1
error_generating_import = 2
import_mismatch_error = 3
subpool_dir_full = 4
no_read_authority = 5
no_record_found = 6
versions_do_not_match = 7
error_reading_archive = 8
error_reading_relid = 9
others = 10.
get all the earnings and deductions
loop at itresult-inter-rt into wa_rt.
case wa_rt-lgart.
to get the net pay
when '/560'.
wa_pernr-npay = wa_rt-betrg.
v_npay = wa_rt-betrg.
endcase.
endloop. -
How to find driver program from sapscript
hi
how do i find name of the report where the sapscript is used.
I have one sapscript & a subroutine pool but name of the report is where this script elements are called is not known.
The program is executed through transaction & first page of output is alv . If I select one row & click on the button provided on staus bar it shows output of sapscript.
how do i find out name of the driver program which calls the script.
Regards
HarshadaHi,
Use tcode : NACE and follow procedure as follows.
For eg:
1)Choose Application from list(eg PO)
2)Click OP type
3)Chose one OP type from Right pane.
4)Click on processing routines
and you got it -
U00BFCan I use a function module as a driver program for sapscript?
Hi,
I have to use a function module as driver program for sapscript and there is no any value in the form (the data are not transferred)...
but if I call the sapcript from a report with the same code as in my function module all the data are transferred OK.
please, can you tell me if there is any problem in use of a function module in this case? is it impossible at all or is there any tip to apply?
thank you all in advance.Hi,
first of all it is possible to use a function module to process a SapScript form.
The mistake on your side is probably the definition of the variables that you want to pass to the form. Please make sure they are defined as global (via SE37 --> Goto --> Global Data) then it should be working.
In addition you could take a look at e.g. function module "PRINT_DUNNING_NOTICE". This is SAP standard and they are using it to print a SapScript form.
Best regards
Arno Speitkamp -
Passing Value from a Driver Program
Hi,
How can i send a specific field's value alone to the form from driver program ?
we normally use write_form in Loop & end loop.
if i wanna send a value from one flied alone wat shud i do??
Pls help me...
Thank You.Hi
See the sample code for Subroutines and do accordingly
How to call a subroutine form SAPscripts
The Form :
/:PERFORM CDE_CENT IN PROGRAM ZKRPMM_PERFORM_Z1MEDRUCK
/:USING &EKKO-EBELN&
/:CHANGING &CDECENT&
/:ENDPERFORM
The report :
REPORT zkrpmm_perform_z1medruck .
DATA : BEGIN OF it_input_table OCCURS 10.
INCLUDE STRUCTURE itcsy.
DATA : END OF it_input_table.
déclaration de la table output_table contenant les
variables exportées
DATA : BEGIN OF it_output_table OCCURS 0.
INCLUDE STRUCTURE itcsy.
DATA : END OF it_output_table.
DATA : w_ebeln LIKE ekko-ebeln,
w_vbeln LIKE vbak-vbeln,
w_zcdffa LIKE vbak-zcdffa.
FORM CDE_CENT
FORM cde_cent TABLES input output.
it_input_table[] = input[].
it_output_table[] = output[].
READ TABLE it_input_table INDEX 1.
MOVE it_input_table-value TO w_ebeln.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = w_ebeln
IMPORTING
output = w_ebeln.
SELECT SINGLE zcdffa FROM ekko
INTO w_zcdffa
WHERE ebeln = w_ebeln.
it_output_table-name = 'CDECENT'.
MOVE w_zcdffa TO it_output_table-value.
MODIFY it_output_table INDEX 1.
output[] = it_output_table[].
ENDFORM.
REPORT ZMPO1 .
form get_freight tables in_par structure itcsy out_par structure itcsy.
tables: ekko,konv,t685t.
data: begin of itab occurs 0,
ebeln like ekko-ebeln,
knumv like ekko-knumv,
end of itab.
data: begin of itab1 occurs 0,
knumv like konv-knumv,
kposn like konv-kposn,
kschl like konv-kschl,
kbetr like konv-kbetr,
waers like konv-waers,
kwert like konv-kwert,
end of itab1.
data: begin of iout occurs 0,
kschl like konv-kschl,
vtext like t685t-vtext,
kbetr like konv-kbetr,
kwert like konv-kwert,
end of iout.
data v_po like ekko-ebeln.
read table in_par with key 'EKKO-EBELN'.
if sy-subrc = 0.
v_po = in_par-value.
select
ebeln
knumv
from ekko
into table itab
where ebeln = v_po.
if sy-subrc = 0.
loop at itab.
select
knumv
kposn
kschl
kbetr
waers
kwert
into table itab1
from konv
where knumv = itab-knumv and
kappl = 'M'.
endloop.
loop at itab1.
if itab1-kposn <> 0.
select single * from t685t
where kschl = itab1-kschl
and kappl = 'M'
and spras = 'EN'.
iout-vtext = t685t-vtext.
iout-kschl = itab1-kschl.
iout-kbetr = itab1-kbetr.
iout-kwert = itab1-kwert.
append iout.
clear iout.
endif.
endloop.
sort itab1 by kposn.
loop at iout.
sort iout by kschl.
if ( iout-kschl eq 'GSDC' OR
iout-kschl eq 'GSFR' OR
iout-kschl eq 'GSIR' ).
at end of kschl.
read table iout index sy-tabix.
sum.
write:/ iout-kschl,iout-vtext,iout-kwert.
out_par-name = 'A1'.
out_par-value = iout-vtext.
append out_par.
out_par-name = 'A2'.
out_par-value = iout-kwert.
append out_par.
endat.
endif.
endloop.
endif.
endif.
endform.
IN THE FORM I AM WRITING THIS CODE.
/:DEFINE &A1& = ' '
/:DEFINE &A2& = ' '
/:PERFORM GET_FREIGHT IN PROGRAM ZMFORM_PO1
/:USING &EKKO-EBELN&
/:CHANGING &A1&
/:CHANGING &A2&
/:ENDPERFORM
&A1&
&A2&
This Code is to be written in the PO form under ADDRESS window.
/:DEFINE &A1& = ' '
/:DEFINE &A2& = ' '
/:DEFINE &A3& = ' '
/:DEFINE &A4& = ' '
/:DEFINE &A5& = ' '
/:DEFINE &A6& = ' '
/:PERFORM GET_VENDOR IN PROGRAM ZMFORM_PO
/:USING &EKKO-EBELN&
/:CHANGING &A1&
/:CHANGING &A2&
/:CHANGING &A3&
/:CHANGING &A4&
/:CHANGING &A5&
/:CHANGING &A6&
/:ENDPERFORM
&A1&
&A2&
&A3&
&A4&
&A5&
&A6&
Reward points for useful Answers
Regards
Anji -
Debugging driver program for SAP SCrIPT
Hi,
I am using a z report for creating handling units.As soon as the handling units are created the spool is genearted for all the handling units and the spool requests are visible in SP01.However the print ouput is having some error.I want to debug the driver program.Fronm nace I found out the driver program and have placed break-point in the form routine Entry sapscript and also activated thhe debugger for te concerned SCript,but the debugger is not stopping .
Also I have checked the script name from the spool.
Kindly guide where is the problem and how to proceed.Any help will be acknowledged.
Regards,
AbhishekHI,
Write a infinite loop in the diver program before u call the open form or before the statement from where you want to debug.
set the infinite loop by this code.
data no type i value 1.
while no eq 1.
endwhile.
break-point.
Then after inserting this code activate and run the program, then run the transaction after runing the transaction ,
goto TCODE ->SM50 u will see list of program select the driver program then select program/session from menu then select program->debugging, then your debug will start from the infinite loop , then change to 2 , then u can debug the program.
Hope this helps.
Regards,
Madhukar Shetty
Maybe you are looking for
-
Problem with XMLTABLE and LEFT OUTER JOIN
Hi all. I have one problem with XMLTABLE and LEFT OUTER JOIN, in 11g it returns correct result but in 10g it doesn't, it is trated as INNER JOIN. SELECT * FROM v$version; Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production PL/SQL R
-
My Catalog - "Can't open Database" error
After being able to open Photoshop Album Starter Edition successfully and without incident several months ago, one day I received this error: "Problem opening the Catalog named "My Catalog". Another user or application may have the catalog open, or o
-
How to use Siri with an IPad 2 iOS update to 7
Hello all, i would like to Know How to use Siri with my iPad 2. My iPad turn on iOS 7.0.2 and i don t view this possibiliy . Thank you all
-
Rc.local does not get executed
Hi all Archers, today I put some commands into my rc.local to enable features recommended by powertop. The problem is they aren't applied with a restart. #!/bin/bash # /etc/rc.local: Local multi-user startup script. # Power aware CPU scheduler echo 1
-
Transportation relations take too long to create
Hello, I use TP/VS for different geographical regions in the same server. The total number of customers reached 30.000, and is likely to reach 55.000 in the middle of the tear with the addition of all the regions. I am trying to create the transporta