Break point in smart form
Dear Gurus....
I am new to smartforms. I have a report which is to be integrated with smart form. I want each PO should start from a new page. I have tried putting an alternative and command in main window but it doesnot solve my problem. Please help me out as i need the solution very urgently...
please mail me the solution here or to my mail id [email protected]
Thanks in advance.
Hi Ajay,
If your question is regarding break point, then create a program line node before the alternative condition and code "break-point". Next time when you execute the program it will stop at this point.
Please let me know what are you displaying in the form. I understand that you want to have a page break for each PO. Are using Table node?
Thanks
Vinod
Similar Messages
-
HI How to set a Break point In Smart Forms
Hi Guys,
i want to set a break-point in main window of the smart form ,before dispalying
values of the varibles in the main window .
How to Set a break-point And What are the ways to set a break point.
Thanks for All.
From
Hitu.Hi Hitu,
Generally, Break Points are set for the purpose of debugging in Smartforms.
For debugging , one of the way is :
1. Write BREAK POINT in the code window.
2. Put a break point on the call function in the driver program
3. Put a break point in the generated Function module.
Hope this resolves your query.
<b>Reward all the helpful answers.</b>
Regards -
Break-points in adobe forms.....
can we put break-points in adobe forms?,
if it is possible how can we do this?is there ay way to see the data of an internal table in a adobe forms?.........................
Edited by: dasr r on Jul 9, 2008 8:49 AMA lot of developers build a Z function module that they call from the interface of the adobe form because
break points always work on functions.
If you are trying to debug a standard form then Im not sure what you can do then.
So what is the name of the form? and which module? more info please. -
Control break statements in smart forms
Hi,
Can we use control break statements(at new,at end of) in smart forms?
if no why?
if yes, how?
Regards,
Sonikayou can use control block statements in smartforms by using the SORT events.
In TABLES go to to the SORT section.Here you can give the field by which you want the table to be sorted.There are two radio buttons available for sort : SORT BEGIN and SORT end.
On selecting any one sort event are generated automatically and event nodes are created in smartforms.Inside these event nodes you can add text nodes or code nodes and write your code.
SORT BEGIN works like AT NEW
SORT END works like AT END OF. -
Hi All,
Can any body guide me how to debug the smart forms.
Thanks & Regards,
Satish.Hi,
The the best way to debug the form is to put a breakpoint in the function module generated by the smartform.
Procedure:
Open the smartform we want to debug.
Goto Environment -> Function module name.
Open the function module in SE37. From the menu GOTO -> main program. Open the last include.
This incude contains the entire code ie the code we have written in initalization + form routines + program lines + sap generated code.
Even we can search for the text nodes, folders, templates, tables, graphics, address nodes etc with their names.
Put a breakpoint at any point you want.
If we issue any doc which triggers this form, when the control reaches the break point it will stop.
Please note that hard-coding the break points in the code ( Program lines ) is not recommended and it can´t be done unless if it is development server.
So, always put a session break point in the related function module.
We can use SFTRACE transaction to know the sequence of the control flow.
If you want to break at each and every text that is printed on the output form put the break points in the forms.
1. %write_text to break at text element.
2. %WRITE_TEXT_MODULE to break at text module.
3. %WRITE_INCLUDE_TEXT to break at include text.
Please put a break point at the first sy-subrc check.
If the control reaches this point, you can find the name of the element in the varible NAME and the content in the text node in %TEXT.
Its easy to understand the sequence of the printing if we put a breakpoint as stated above.
Regards,
Satish. -
Call text element and command in smart forms
Hi, I have create a smart form that have one text element and one command. The command is for do a page break.
I have seen that you can call the smart form from a program doing:
1.-'SSF_FUNCTION_MODULE_NAME'
2.-call function fm_name
That is not ok for me because I want to call to the smart forms manually as befores it done with sap-script, open form, write , close form...
What function Have I to use to call to the text element?
What function Have I to use to call to the command?
Someone have and example calling a smart form from an abap.
Thanks in advance.
MANUELHi Vinod, I do not understand very good that you propose.
I explain more details of I have to do:
I have a abap program that read and write some data, I want to pass every line of the report to smart form, and in some lines comes a break page that I have to force also in the smart form, the idea
LOOP AT ITAB.
IF ITAB-LINE EQ '<BREAK>'.
BREAK PAGE IN SMART FORM
ELSE.
PASS ITAB-LINE TO SMART FORM
ENDIF.
ENDLOOP.
In order to do that I have created in the smart forms one text element X_LINE that represents every line and a command NEWPAGE that force page break.
Is possible to do that I want by the way that you propose?
Thanks in advance.
MANUEL -
Hi experts,
I want to debug a smartform , what is the procedure ?
can any body explain me briefly?
Thanks
vamsi.Hi,
The the best way to debug the form is to put a breakpoint in the function module generated by the smartform.
Procedure:
Open the smartform we want to debug.
Goto Environment -> Function module name.
Open the function module in SE37. From the menu GOTO -> main program. Open the last include.
This incude contains the entire code ie the code we have written in initalization + form routines + program lines + sap generated code.
Even we can search for the text nodes, folders, templates, tables, graphics, address nodes etc with their names.
Put a breakpoint at any point you want.
If we issue any doc which triggers this form, when the control reaches the break point it will stop.
Please note that hard-coding the break points in the code ( Program lines ) is not recommended and it can´t be done unless if it is development server.
So, always put a session break point in the related function module.
We can use SFTRACE transaction to know the sequence of the control flow.
If you want to break at each and every text that is printed on the output form put the break points in the forms.
1. %write_text to break at text element.
2. %WRITE_TEXT_MODULE to break at text module.
3. %WRITE_INCLUDE_TEXT to break at include text.
Please put a break point at the first sy-subrc check.
If the control reaches this point, you can find the name of the element in the varible NAME and the content in the text node in %TEXT.
Its easy to understand the sequence of the printing if we put a breakpoint as stated above.
Regards,
Satish. -
hi,
i have kept break point in my smart form at any many places . but when i execute the smart form im unable to debug the code . its not stopping at the break points what could be the problem.Hello Mahammad,
On activation, the smartform generates an function module.
To debug a smartform ,after activation you have to got to Environment->function module name and from there get the automatically generated function module name of your smartform.
Then goto SE37, and display the attributes of you function module.
Get the program name from there under the general data tab.
Then goto SE38, enter that program name and open it in dislpay mode.
There in the program in its last include which would be of kind, (INCLUDE /1BCDWB/LSFxxxxxxxF01),contains the coding of the smartform.
Now set the breakpoint in that include program and debug your smartform.
Hope it helps you.
Thanks Mansi -
How to achieve dynamic page break in Smart form
Hi
1.How to achieve dynamic page breaks in Smart forms.
2.What are the various table types in Smart forms.
Regards<i>Dynamic page break : </i>
create a node of type COMMAND and in its attributes check "Go to new page".
<i>There are Tables and Templates in smart forms :</i>
Use node type <i>Template</i> to display a table whose layout and size (number of lines and columns) is determined before the runtime of the print program else use <i>Table</i>.
Take a look at <a href="http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVSCRSF/BCSRVSCRSF.pdf">SAP Smart Forms (BC-SRV-SCR)</a>
Regards -
How to use At New Cntrol Break in smart form LAyout
Hi all respected seniors and experts.....
I am facing one problem in smart form I am creating layout for Tax Invoice in that I want to display in Header area "ARKTX" Short text for sales order item and sum of quantity "FKIMG" and Rate "GKBETR" and Gross amount after multiplying of FKIMG and GKBETR with respected to cheking Rate "GKBETR" and "ARKTX " .
Rate is changing for diffrent documnet no. e.x VBELN .....
means some time for changing of every VBELN rate is different "GKBETR"
so i want to print the same RATE's quantiy on one page and changing of Rate should print on next page onwards .....
and details of quantity with all diffrent vbeln should display on Body of layout....
I think it will solve by using At New control break .....but can any body tell me what is the exact solution of this problem
Thanx in advanceHi,
Please check this link ... and please ensure you sorted the internal table prior to use the control break events (at new and at first).
http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/db9f1f35c111d1829f0000e829fbfe/content.htm
Regards,
Ferry Lianto -
Problem in page break of smart forms
Hi Gurus,
I am using smart forms for printing on cheque. What is the problem i am facing is i have three entries in my internal table which i am passing to the smart forms from my driver program. But In the output i am getting four print outs last one having the details of the previous one.
My logic flows like this,
I have used one loop for main window and have added the command for page break, and then I have read the values for the other windows. I have tried in many ways like counting the number of values in internal table and added that in command but its not working.
Anybody please help me to fix the problem.
Thanks in advanceHello friend,
If you have a problem of getting one page printed in addition to the other pages then handle the situation as follows,
Try to create a folder and handle this problem or create alternatives and put the page break commands inside it so that you can handle the situation by giving condition in the alternatives.
If your problem still exists please revert back to me i will help you.
Thanks,
Sri Hari -
Anyone please tell me what are pointers to a Smart Form ?
I was just curious when I read the answer given by someone.....
there are a few ways to access the relevant SPRO (Implementation Guide for R/3 Customizing) transaction to switch the pointer to a Smart Form instead of SAPscript. In your case, one of the simplest ways is via transaction code NACE (Conditions for Output Control). From there, the steps are as follows:
1) Select 'V1' (Sales) 2) Click on the 'Output Types' button 3) Select the relevant output type (e.g. BA00) 4) Double-click on the 'Processing routines' folder 5) Double-click on the relevant transmission medium (e.g. 1 for printer). 6) The Smart Form entry field is near the top of the screen 7) On the same screen, you can update the print program entries and remove the obsolete SAPscript reference.
Caution: Even though a Smart Form is client-independent, the above configuration table is client-dependent. In other words, if you make the above change in client 100, it will not affect the settings in client 200.
<MOVED BY MODERATOR TO THE CORRECT FORUM>
Edited by: Alvaro Tejada Galindo on Aug 8, 2008 4:42 PMThis is not any kind of POINTERS in the technaical terms.
The author only want to say that if you want to issue a output using the Smartform instead of the SAPScript, you need to follow these steps.
Regards,
Naimesh Patel -
Smart form- How to apply page break after every 5 entries in main window?
How do i make sure that only 5 line items are displayed per page in main window of my smart form. After 5 line items, the remaining lines should be printed in the next page
Hi
Pls check the link
issue related to next page in smartform -
i have copied a driver programe of outbound delivery and modified in such a way the layout will convert to pdf and then download to pc, but the driver program is not executing online, so do i need to attache the driver program name and form name in nace t.code or how would i execute the program, when i am placing a break point in driver program and execute form its not stopping at break point, i am new to forms, help me out in this.
i have placed the code below plz verify it and say if any thing is wrong in the code, u will be shurely rewareded.
Print of a delivery note by SAPscript SMART FORMS *
REPORT Z_RLE_DELNOTE1.
declaration of data
INCLUDE Z_RLE_DELNOTE_DATA_DECLARE1.
*INCLUDE RLE_DELNOTE_DATA_DECLARE.
definition of forms
INCLUDE Z_RLE_DELNOTE_FORMS1.
*INCLUDE RLE_DELNOTE_FORMS.
INCLUDE Z_RLE_PRINT_FORMS1.
*INCLUDE RLE_PRINT_FORMS.
FORM ENTRY
FORM ENTRY USING RETURN_CODE US_SCREEN.
DATA: LF_RETCODE TYPE SY-SUBRC.
XSCREEN = US_SCREEN.
PERFORM PROCESSING USING US_SCREEN
CHANGING LF_RETCODE.
IF LF_RETCODE NE 0.
RETURN_CODE = 1.
ELSE.
RETURN_CODE = 0.
ENDIF.
ENDFORM.
FORM PROCESSING *
FORM PROCESSING USING PROC_SCREEN
CHANGING CF_RETCODE.
DATA: LS_PRINT_DATA_TO_READ TYPE LEDLV_PRINT_DATA_TO_READ.
DATA: LS_DLV_DELNOTE TYPE LEDLV_DELNOTE.
DATA: LF_FM_NAME TYPE RS38L_FNAM.
DATA: LS_CONTROL_PARAM TYPE SSFCTRLOP.
DATA: LS_COMPOSER_PARAM TYPE SSFCOMPOP.
DATA: LS_RECIPIENT TYPE SWOTOBJID.
DATA: LS_SENDER TYPE SWOTOBJID.
DATA: LF_FORMNAME TYPE TDSFNAME.
DATA: LS_ADDR_KEY LIKE ADDR_KEY.
*Begin of changes by 67.
DATA: ls_document_output_info TYPE ssfcrespd,
ls_job_output_options TYPE ssfcresop.
*End of changes by 67.
SmartForm from customizing table TNAPR
LF_FORMNAME = TNAPR-SFORM.
determine print data
PERFORM SET_PRINT_DATA_TO_READ USING LF_FORMNAME
CHANGING LS_PRINT_DATA_TO_READ
CF_RETCODE.
IF CF_RETCODE = 0.
select print data
PERFORM GET_DATA USING LS_PRINT_DATA_TO_READ
CHANGING LS_ADDR_KEY
LS_DLV_DELNOTE
CF_RETCODE.
ENDIF.
IF CF_RETCODE = 0.
PERFORM SET_PRINT_PARAM USING LS_ADDR_KEY
CHANGING LS_CONTROL_PARAM
LS_COMPOSER_PARAM
LS_RECIPIENT
LS_SENDER
CF_RETCODE.
ENDIF.
*Begin of changes by 67.
CALL FUNCTION 'SSF_GET_DEVICE_TYPE'
EXPORTING
i_language = v_language
I_APPLICATION = 'SAPDEFAULT'
IMPORTING
E_DEVTYPE = v_e_devtype
st_output_options-tdprinter = v_e_devtype.
*st_output_options-tdprinter = 'locl'.
LS_CONTROL_PARAM-no_dialog = 'X'.
LS_CONTROL_PARAM-getotf = 'X'.
*End of changes by 67.
IF CF_RETCODE = 0.
determine smartform function module for delivery note
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = LF_FORMNAME
variant = ' '
direct_call = ' '
IMPORTING
FM_NAME = LF_FM_NAME
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
error handling
CF_RETCODE = SY-SUBRC.
PERFORM PROTOCOL_UPDATE.
ENDIF.
ENDIF.
IF CF_RETCODE = 0.
call smartform delivery note
CALL FUNCTION LF_FM_NAME
EXPORTING
ARCHIVE_INDEX = TOA_DARA
ARCHIVE_PARAMETERS = ARC_PARAMS
CONTROL_PARAMETERS = LS_CONTROL_PARAM
mail_appl_obj =
MAIL_RECIPIENT = LS_RECIPIENT
MAIL_SENDER = LS_SENDER
OUTPUT_OPTIONS = LS_COMPOSER_PARAM
USER_SETTINGS = ' '
IS_DLV_DELNOTE = LS_DLV_DELNOTE
IS_NAST = NAST
*Begin of changes by 67.
importing
document_output_info = ls_document_output_info "67
job_output_info = tab_otf_data
job_output_options = ls_job_output_options "67
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5.
*End of changes by 67.
IF SY-SUBRC <> 0.
error handling
CF_RETCODE = SY-SUBRC.
PERFORM PROTOCOL_UPDATE.
get SmartForm protocoll and store it in the NAST protocoll
PERFORM ADD_SMFRM_PROT. "INS_HP_335958
ENDIF.
ENDIF.
get SmartForm protocoll and store it in the NAST protocoll
PERFORM ADD_SMFRM_PROT. DEL_HP_335958
--Function modules conversts from otf to pdf format.--
*Begin of chanes by 67.
CALL FUNCTION 'CONVERT_OTF_2_PDF'
EXPORTING
USE_OTF_MC_CMD = 'X'
ARCHIVE_INDEX =
IMPORTING
BIN_FILESIZE = v_bin_filesize
TABLES
otf = v_tab_otf_final
doctab_archive = v_it_docs
lines = v_it_lines
EXCEPTIONS
ERR_CONV_NOT_POSSIBLE = 1
ERR_OTF_MC_NOENDMARKER = 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 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE = v_bin_filesize
filename = 'D:\67.PDF'
FILETYPE = 'BIN'
APPEND = ' '
WRITE_FIELD_SEPARATOR = ' '
HEADER = '00'
TRUNC_TRAILING_BLANKS = ' '
WRITE_LF = 'X'
COL_SELECT = ' '
COL_SELECT_MASK = ' '
DAT_MODE = ' '
CONFIRM_OVERWRITE = ' '
NO_AUTH_CHECK = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
WRITE_BOM = ' '
TRUNC_TRAILING_BLANKS_EOL = 'X'
IMPORTING
FILELENGTH = v_file_size
tables
data_tab = v_pdf_tab
FIELDNAMES =
EXCEPTIONS
FILE_WRITE_ERROR = 1
NO_BATCH = 2
GUI_REFUSE_FILETRANSFER = 3
INVALID_TYPE = 4
NO_AUTHORITY = 5
UNKNOWN_ERROR = 6
HEADER_NOT_ALLOWED = 7
SEPARATOR_NOT_ALLOWED = 8
FILESIZE_NOT_ALLOWED = 9
HEADER_TOO_LONG = 10
DP_ERROR_CREATE = 11
DP_ERROR_SEND = 12
DP_ERROR_WRITE = 13
UNKNOWN_DP_ERROR = 14
ACCESS_DENIED = 15
DP_OUT_OF_MEMORY = 16
DISK_FULL = 17
DP_TIMEOUT = 18
FILE_NOT_FOUND = 19
DATAPROVIDER_EXCEPTION = 20
CONTROL_FLUSH_ERROR = 21
OTHERS = 22.
IF sy-subrc <> 0.
MESSAGE i001(z00) WITH 'File not downloaded succesfully'.
else.
MESSAGE i002(z00) WITH 'File 67.PDF downloaded succesfully under D: drive'.
ENDIF.
*End of changes by 67.
ENDFORM.Hi,
Make sure that the output type you are using is configured for your custom-copied program name, form routine, and the form you are using. The output types can be found in transaction NACE.
Award points if found helpful.
Thanks,
Leo -
Hi all,
how to view the print preview of a smart form and how to debug the smart form
Thank YouSMARTFORM-> execute->execute->pass values if require to import & table parameters ->execute-> on the pop up window give Printer name as LP01 and press print preview.
For debussing -
1. write BREAK POINT in the code window.
2. Put a break point on the call function in the driver program
3. put a brak point in the generated Function module.
Refer this link too -
Re: smartforms
Regards,
Amit
Maybe you are looking for
-
Problem With 100% Down Payment A/R Invoice
Hi All, I am facing a problem while creating a 100% A/R Down Payment Invoice. Let me describe the steps that I have followed- 1. Initially Customer C1 has : Account Balance=0, Deliveries=0, Orders=0. It's a new customer. 2.
-
Firefox has crashed for me about 5 times in a 20 min span. A total of about 10 times today. What's wrong with it? Is it my laptop? Sometimes as soon as I open it, it just crashes.
-
Oracle froms where libraries attached
hi, I just want to know when in oracle forms 10g we attached libraries to form and click on "no" when it asked to remove path. so where is this path save? can we see or update this path ? thanks in advance
-
Import TLF markup into InDesgin CS5 or CS5 Server
Can anyone tell me if there is a way to import the TLF markup into InDesign? Is it possbile to translate the TLF markup into an IDML format? I need to push text from a Flex app into InDesign while preserving all formatting. Would it be better to u
-
Hi i am new to XI , can anyone tell me some SAP applications used by XI