Need Help in Smartforms - multiple pages
Hi all,
I have developed a Smartform in which i have 2 PAGES.
in the First Page : there are many windows .
Due to space crunch , i can only print a single line / first record alone in the Main Window. the size of the MAIN window is also small .
then i have specified the PAGE2 as the NEXT page.
In the Second Page i have to print the other remaining data in the MAIN WINDOW.
the problem i am facing is :
1. I cant have a MAIN WINDOW in the FIRST page because we cant have a MAIN page if we are going to specify PAGE2 as the next page. Due to this reason i have no MAIN WINDOW in the FIRST PAGE. IN the PAGE2 i have placed the MAIN window.
2. How to make the remaining data print in the PAGE2. I am able to print the first record in the FIRST page.
Kindly tell in the steps i have to follow , to PRINT THE FIRST RECORD IN THE FIRST PAGE AND THE REMAINING DATA IN THE SECOND PAGE.
Thanks and Regards,
Vikki.
Hi,
Please declare window(Not main window) in first page, Display one record in first page,
and declare main window in second page give remaining entries in second page.
Just now i have checked, it is working perfectly as per above solution.
Regards
Jana
Edited by: Janardhan Reddy on Sep 22, 2008 12:40 PM
Similar Messages
-
Need help in creating multiple signature forms?
need help in creating multiple signature forms that can be digitally signed in adobe reader
Automator gets a bit unweildy when trying to vary things outside of what the actions provide. Since you are already using an AppeScript in your workflow, might as well do the whole thing:
set baseFolder to (path to desktop) -- the location to create the folder
display dialog "Please provide a new folder name:" default answer "test"
set folderName to text returned of the result
repeat -- keep repeating until a number is returned
display dialog "How many subfolders?" default answer "5"
set theNumber to text returned of the result
try -- test the result
set theNumber to theNumber as integer
exit repeat -- success
end try
end repeat
tell application "Finder"
try -- make new folder
set newFolder to (make new folder at baseFolder with properties {name:folderName})
on error number -48 -- skip errors if the folder is already there
set newFolder to ((baseFolder as text) & folderName) as alias
end try
repeat with X from 1 to theNumber
try -- make new subfolder
make new folder at newFolder with properties {name:folderName & X}
on error number -48 -- skip errors if the folder is already there
end try
end repeat
end tell -
Acrobat X Pro - I need to export a multiple page pdf into a powerpoint presentation - no editing ability needed
Then you need to upgrade to Acrobat XI Pro, which you can do from the Adobe Products Page.
-
Need help Setting up Multiple Static Ip , 1 for each port of the fios router
Need help Setting up multiple Static Ip on my fios router
I have been trying to figure out how to set up multiple ip in my fios router.
However I kind of managed how to set up multiple static ip However the way I want it is for each port of my router to have an external ip signed to it. ( like 4 different modem in 1 )
Verizon gave me 5 static ip but they can not help me how to set it up.
Have anyone here done more then one static ip on different ports? I assume that the process will be the after the second static ip.You want to set up Static Nat. You will not assign the IP to a port, but rather to a local machine. Figure out what machines you want your IP's to go to. Under the firewall section you will see static nat. Pick the machine you want and enter one of the IP's you were assigned.
-
I need help on a main page. basic for u but not for me
Hello,
I need help on a main page.
I have this page called themainpage.cfm which someone here
asked me to make it the main page of my cf pages.
I have 2 pages right now in testing server.
Bloicpage.cfm
And
Index.cfm
When you go to
Server.myappfolders/repfolder
It let you go to
Server.myappfolders/rep/folder/ Bloicpage.cfm
Page.
I need for the themainpage.cfm to be the default when typing
Server.myappfolders/repfolder
Then have a link to the Bloicpage.cfm and a back button to go
back to the mainpage.cfm
Many thankshere is the Bloicpage.cfm
which is currently the main page when you type
Server.myappfolders/repfolder
i need it to go to another main page which will have a link
to this and a back button from here and a back button from the
report html page and the excel csv page
ps .
i excluded the queries and some logics.
sorry
thanks
<cfparam name="form.ctcde" default="ALL">
<cfparam name="form.SDT" default="#now()#">
<cfparam name="form.EDT" default="#now()#">
<cfparam name="Form.outputFormat" default="CSV">
<cfsetting showdebugoutput="no"/>
<cfif not isdate(form.SDT)><cfset form.SDT =
now()></cfif>
<cfif not isdate(form.EDT)><cfset form.EDT =
now()></cfif>
<!---
01/01/2003
--->
<cfquery name="theQuery" datasource="cts9i">
SELECT
</cfswitch>
group by
Order by </cfquery>
<cfset a = a + 1>
</cfoutput>
<cfswitch expression="#Form.outputFormat#">
<cfc value="HTML">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<style type="text/css">
table{
font-family:Arial, Helvetica, sans-serif;
font-size:85%;
td{
font-family:Arial, Helvetica, sans-serif;
font-size:85%;
th{
font-family:Arial, Helvetica, sans-serif;
font-size:85%;
h2{
font-family:Arial, Helvetica, sans-serif;
font-size:120%;
h3{
font-family:Arial, Helvetica, sans-serif;
font-size:100%;
</style>
<body>
<cfoutput>
<div align="center">
<h2>Bkc#dateformat(form.SDT,"mm/dd/yyyy")# to
#dateformat(form.EDT,"mm/dd/yyyy")# Wudd</h2>
</div>
<div align="center">
<h3>#form.ctcde# CCwoph</h3>
</div>
<table border="1" cellpadding="0" cellspacing="0">
<tr>
<th>ccc##</th>
<th>aaa</th>
<th>cccc</th>
<th>iii</th>
<th>Eee</th>
<th>h11</th>
<th>h112</th>
<th>h22</th>
<th>h222</th>
<th>h33</th>
<th>h333</th>
<th>ehh</th>
</tr>
<cfset variables.nphc = 0>
<cfloop index="x" from="1" to="#arraylen(anArray)#"
step="1">
<cfif NOT anArray[x][1]>
<tr>
<td>
#anArray[x][2].c_nbr#
</td>
<td>
#anArray[x][2].c_dcdt#
</td>
<td>
#anArray[x][2].PAPD#
</td>
<td>
#anArray[x][2].Iii#
</td>
<td>
#anArray[x][2].Eee#
</td>
<cfset thirdArray = anArray[x][3]>
<cfif NOT arraylen(thirdArray)>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<cfelse>
<cfloop index="z" from="1" to="3">
<cfif z GT arraylen(thirdArray)>
<td> </td>
<td> </td>
<cfelse>
<td>
#thirdArray[z][2]#
</td>
<td>
#thirdArray[z][3]#
</td>
</cfif>
</cfloop>
<cfif arrayLen(thirdArray) gt 3>
<td nowrap="nowrap">
<cfloop index="z" from="4"
to="#arraylen(thirdArray)#">
#thirdArray[z][2]# - #thirdArray[z][3]#<BR />
</cfloop>
</td>
</cfif>
</cfif>
</tr>
<cfset variables.nphct = variables.nphct + 1>
</cfif>
</cfloop>
</table>
Total Ccwoph: #variables.nphct#
<BR />
<BR />
<HR />
<BR />
<div align="center">
<h3>#form.ctcde# CWph</h3>
</div>
<table border="1" cellpadding="0" cellspacing="0">
<tr>
<th>ccc##</th>
<th>aaa</th>
<th>cccc</th>
<th>iii</th>
<th>Eee</th>
<th>h11</th>
<th>h112</th>
<th>h22</th>
<th>h222</th>
<th>h33</th>
<th>h333</th>
<th>ehh</th>
</tr>
<cfset variables.phc = 0>
<cfloop index="x" from="1" to="#arraylen(anArray)#"
step="1">
<cfif anArray[x][1]>
<tr>
<td>
#anArray[x][2].c_nbr#
</td>
<td>
#anArray[x][2].c_dcdt#
</td>
<td>
#anArray[x][2].PAPD#
</td>
<td>
#anArray[x][2].Iii#
</td>
<td>
#anArray[x][2].Eee#
</td>
<cfset thirdArray = anArray[x][3]>
<cfif NOT arraylen(thirdArray)>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<cfelse>
<cfloop index="z" from="1" to="3">
<cfif z GT arraylen(thirdArray)>
<td> </td>
<td> </td>
<cfelse>
<td>
#thirdArray[z][2]#
</td>
<td>
#thirdArray[z][3]#
</td>
</cfif>
</cfloop>
<cfif arrayLen(thirdArray) gt 3>
<td nowrap="nowrap">
<cfloop index="z" from="4"
to="#arraylen(thirdArray)#">
#thirdArray[z][2]# - #thirdArray[z][3]#<BR />
</cfloop>
</td>
</cfif>
</cfif>
</tr>
<cfset variables.phc = variables.phc + 1>
</cfif>
</cfloop>
</table>
Total Cwph: #variables.phc#
<!---
<cfloop index="x" from="1" to="#arraylen(anArray)#"
step="1">
#anArray[x][1]#
#anArray[x][2].c_id#
#anArray[x][2].c_nbr#
#anArray[x][2].c_dcdt#
#anArray[x][2].PAPD#
#anArray[x][2].Iii#
#anArray[x][2].Eee#
#anArray[x][2].NumberOfHolds#
<cfset thirdArray = anArray[x][3]>
<cfloop index="z" from="1" to="#arraylen(anArray[x][3])#"
step="1">
#thirdArray[z][1]#
#thirdArray[z][2]#
#thirdArray[z][3]#
</cfloop>
<HR />
</cfloop>
--->
</cfoutput>
</body>
</html>
</cfc>
<cfc value="CSV">
<cfoutput>
<cfset variables.theOutput =
"Bkc#dateformat(form.SDT,"mm/dd/yyyy")# to
#dateformat(form.EDT,"mm/dd/yyyy")# Wudd">
<cfset variables.theOutput = variables.theOutput &
chr(10)>
<cfset variables.theOutput = variables.theOutput &
"#form.ctcde# CCwoph">
<cfset variables.theOutput = variables.theOutput &
chr(10)>
<cfset variables.theOutput = variables.theOutput & "C
##,Ad,Ccc,Iii,Eee,h11,h12,h22 ,h222,h33,H333,ehh">
<cfset variables.theOutput = variables.theOutput &
chr(10)>
<cfset variables.nphct = 0>
<cfloop index="x" from="1" to="#arraylen(anArray)#"
step="1">
<cfif NOT anArray[x][1]>
<cfset variables.theOutput = variables.theOutput &
"#anArray[x][2].c_nbr#, #anArray[x][2].c_dcdt#,
#anArray[x][2].PAPD#,#anArray[x][2].Iii#,#anArray[x][2].Eee#">
<cfset thirdArray = anArray[x][3]>
<cfif NOT arraylen(thirdArray)>
<cfset variables.theOutput = variables.theOutput &
",,,,,,">
<cfelse>
<cfloop index="z" from="1" to="3">
<cfif z GT arraylen(thirdArray)>
<cfset variables.theOutput = variables.theOutput &
",,">
<cfelse>
<cfset variables.theOutput = variables.theOutput &
",#thirdArray[z][2]#,#thirdArray[z][3]#">
</cfif>
</cfloop>
<cfif arrayLen(thirdArray) gt 3>
<cfloop index="z" from="4"
to="#arraylen(thirdArray)#">
<cfset variables.theOutput = variables.theOutput &
"#thirdArray[z][2]# - #thirdArray[z][3]# | ">
</cfloop>
</cfif>
</cfif>
<cfset variables.nphct = variables.nphct + 1>
<cfset variables.theOutput = variables.theOutput &
chr(10)>
</cfif>
</cfloop>
<cfset>
<cfset>
<cfset >
<cfset >
<cfset >
< & chr(10)>
</cfif>
</cfloop>
</cfoutput>
<cfcontent
type="application/msexcel"><cfoutput>#variables.theOutput#</cfoutput></cfc></cfswitch> -
Need help to share Number/Pages file visa Mail option. Cannot do with iPad Air
Oh, okay. After selecting the format I want to send, it says "creating... ". Then irrespective of the format I choose the message e.g. "creating spreadsheet" disappears, and so does the choice window (where I earlier chose Mail). I am taken back to the Numbers (or Page) where I had started from. Diavonex's note indicated that after "creating ... " stage I should be taken to an option where I can type in email address where I want to send the file, if I want to copy it to another address etc. I cannot arrive at that page - no matter whether I am working with Pages or Number, or which format I choose for the file to share !
I will try to close as you have suggested and try. However, I have switched on and off several times by now, but nothing changed!
Will look forward to any ideas to solve this !!!
Thanks much!
Best -
Need help in smartforms page break
HI Experts,
I need yout help in Smartforms.
My requirement is I want to check my current page count with total number of pages in smartform.
Based on above , I wish to print some text only on the main window of last page.Currently, the text is getting printed on all pages.
Steps taken:
1) SFSY-FORMPAGES & SFSY-PAGE already checked but both of them get set simultaneously so the concept doesn't work.
2) Tried creating a custom FM and using total number of line items available at ITEM level . Doesn't work .
Any help would be highly appreciated.
Thanks,
Abhinav.Hi sap_wiz,
I have 2 pages into my smartform ( FIRST & NEXT ). The SFSY-FORMPAGES parameter is not getting set at the trigger of MAIN window of FIRST page .
If I check the value both FORMPAGES & PAGES parameter are 1 and on next page it gets set as 2 & 2. So I am not able to use SFSY concept.
Hi DeepakNandikanti ,
I wish to print the text at the end of MAIN window towards the FOOTER of table ( MAIN window has a table ) and not outside the window.
Thanks,
Abhinav. -
Need help combining docs in Pages or Preview--glitches
I'm trying to combine about 20 short docs into one, so it will print as one document. I've tried the following, and run into these problems:
1) Copying thumbnails in Pages. This works most of the time--however, every now and then, it will only copy one page of a multiple-page document. It doesn't seem to matter what/where I click, only the first page of the doc will copy over. This seems to happen every fourth document or so.
2) In Preview: tried combining PDFs by dragging and dropping from the sidebar. However, that created something that, while looking like a 38 page single document, still considered each document as separate. When I went to print, it would only print the document that was in the window.
3) In Preview: tried doing the drag-and-drop by dragging directly on to the page in the sidebar, instead of below or above (as recommended for Snow Leopard in a MacWorld article). Didn't work. The green plus sign appeared, but after I dragged and dropped, the new pages would disappear.
It would be incredibly helpful if I could solve this problem. I've combined a number of how-to sheets into a packet, and not being able to combine them into a single document means a very long night of collating!
Thanks for any help.
BTW, I'm on an iMac, Snow Leopard (10.6.8), Preview 5.0.3 and Pages 4.1.When copying the Thumbnails in Pages '09 to paste into the Thumbnails of a 2nd document, they both must have the same page dimensions and orientation.
When selecting make sure you have all the sections selected (surrounded by a yellow border). Hold down the shift key and select a range or individual selections if need be.
I have tested this and it works. Even between Word Processing and Layout templates.
In Preview I tested the merge and yes there appears to be a bug, even after saving, then printing.
It is not just the two parts treated as separate however, it seems to drop pages at random. Some from the dragged over version and some from the original.
Possibly it is retaining only pages with different numbers, because it did not renumber them. I will test it further later on when I have time.
Peter -
Hello, I have no training in using Adobe Acrobat Pro or Livecycle Designer so I need major help with a 1 page form that I am attempting to create. Basically the form will be used to nominate employees for a Job Well Done Award.
The form contains the following:
1.) The name(s) of the employees being nominated and the date of the accomplishment.
2.) In the middle of the page I have a section for a write up, limited to 5000 characters, this is were I am needing the most help. A couple of things, about this section: The font is set at 11 and I don't want it to change. The text field has multiple-line, scroll long text enabled. The text field is a certain size and can only hold so much text, then it starts to scroll, which I am ok with, I like that feature. The issue I am having is during printing. I would like to keep the text field scrollable but when I print I would like to be able to print everything in that field. Executing this is the problem, I have no clue how to do it. I was hoping for some setting within Acrobat Pro or LiveCycle to be available, but the more I read and research this, it appears that it may require java, xml, basically some coding. I don't know for sure.
3.) Below the text field I have another field for the person nominating to type their name and right next to that another field for a digital signature.
4.) And finally below those two fields I have a Submit button that is setup to start email application so the form can be emailed to the proper inbox.
Thank you in advance.With an Acrobat form the only thing you can do is export the text to
another location (like a blank field on another page) or to another file
format. With an LCD form you can expand the text box itself, but you'll
need to ask about that over at the LCD Scripting forum. -
It's very urgent i need help in smartforms
I need your help for smartforms. I created a smartforms in SD for getting quotations. My problem is that when I run da report it is not executing & if i run smartforms it is giving error in da functional module as - In program "/1BCDWB/SAPLSF00000003 ", the following syntax error occurred:
"The data object "I_HEADER" does not have a component called "BNAME"."
and more over i need a code for my my user tht when i execute this form before displaying print or printpreview i should give a popup window asking da user whether to display item code or not then i should get da print or printpreview. when the user needs item code he can print as well if he don't it should not display. this da code i return in se38 editor. In smartforms i wrote code for getting company address etc. I did not write anything in initialization.
source code
*& Application : Sales & Distribution (SD)
*& Description : This report will Print Sales Order Confirmation Using Smartform
*& Transaction Code :
*& Area Menu Code : ZSD
*& Layout : ZSDORDERCONF
*& Dev.Complited On :
REPORT ZSDR0004.
INCLUDE: ZSDI0003.
S U B R O U T I N E S *
FORM ENTRY USING RETURN_CODE TYPE I
US_SCREEN TYPE C.
CLEAR RETCODE.
XSCREEN = US_SCREEN.
PERFORM PROCESSING.
IF RETCODE NE 0.
RETURN_CODE = 1.
ELSE.
RETURN_CODE = 0.
ENDIF.
ENDFORM. "ENTRY
FORM PROCESSING *
FORM PROCESSING.
PERFORM GET_DATA.
CHECK RETCODE = 0.
PERFORM PRINT_DATA.
CHECK RETCODE = 0.
ENDFORM. "PROCESSING
FORM CHECK_REPEAT *
A text is printed, if it is a repeat print for the document. *
FORM CHECK_REPEAT.
CLEAR REPEAT.
SELECT * INTO *NAST FROM NAST WHERE KAPPL = NAST-KAPPL
AND OBJKY = NAST-OBJKY
AND KSCHL = NAST-KSCHL
AND SPRAS = NAST-SPRAS
AND PARNR = NAST-PARNR
AND PARVW = NAST-PARVW
AND NACHA BETWEEN '1' AND '4'.
CHECK *NAST-VSTAT = '1'.
REPEAT = 'X'.
EXIT.
ENDSELECT.
ENDFORM. "CHECK_REPEAT
FORM GET_DATA *
General provision of data for the form *
FORM GET_DATA.
DATA: US_VEDA_VBELN LIKE VEDA-VBELN.
DATA: US_VEDA_POSNR_LOW LIKE VEDA-VPOSN.
DATA: DA_MESS LIKE VBFS OCCURS 0 WITH HEADER LINE.
DATA: DA_SUBRC LIKE SY-SUBRC,
DA_DRAGR LIKE TVAG-DRAGR.
DATA: DA_GANF(1) TYPE C, "Print flag for billing correction
DA_LANF(1) TYPE C. "Print flag for billing correction
CALL FUNCTION 'RV_PRICE_PRINT_GET_MODE'
IMPORTING
E_PRINT_MODE = PRICE_PRINT_MODE.
IF PRICE_PRINT_MODE EQ CHARA.
CALL FUNCTION 'RV_PRICE_PRINT_REFRESH'
TABLES
TKOMV = TKOMV.
ENDIF.
CLEAR KOMK.
CLEAR KOMP.
VBCO3-MANDT = SY-MANDT.
VBCO3-SPRAS = NAST-SPRAS.
VBCO3-VBELN = NAST-OBJKY.
VBCO3-KUNDE = NAST-PARNR.
VBCO3-PARVW = NAST-PARVW.
CALL FUNCTION 'RV_DOCUMENT_PRINT_VIEW'
EXPORTING
COMWA = VBCO3
IMPORTING
KOPF = VBDKA
TABLES
POS = TVBDPA
MESS = DA_MESS
EXCEPTIONS
FEHLER_BEI_DATENBESCHAFFUNG = 1.
IF SY-SUBRC NE 0.
PERFORM PROTOCOL_UPDATE.
RETCODE = 1.
EXIT.
ELSE.
LOOP AT DA_MESS.
SY-MSGID = DA_MESS-MSGID.
SY-MSGNO = DA_MESS-MSGNO.
SY-MSGTY = DA_MESS-MSGTY.
SY-MSGV1 = DA_MESS-MSGV1.
SY-MSGV2 = DA_MESS-MSGV2.
SY-MSGV3 = DA_MESS-MSGV3.
SY-MSGV4 = DA_MESS-MSGV4.
PERFORM PROTOCOL_UPDATE.
ENDLOOP.
ENDIF.
*Get Header Data In I_HEADER Table.
SELECT VBAKVBELN VBAKAUDAT VBAKKUNNR VBAKWAERK
VBAKVKORG VBAKANGDT VBAKBNDDT VBAKVBTYP
VBAKKNUMV VBAKKALSM VBAKNETWR VBAKVKBUR
VBAKBNAME VBKDBSTKD VBKDBSTDK VBKDINCO1
VBKDINCO2 VBKDZTERM
INTO CORRESPONDING FIELDS OF TABLE I_HEADER
FROM VBAK
JOIN VBKD ON VBKDVBELN = VBAKVBELN
WHERE VBAK~VBELN = VBCO3-VBELN.
**Get Address Number For Company
IF NOT I_HEADER[] IS INITIAL.
READ TABLE I_HEADER INDEX 1.
SELECT SINGLE BUKRS ADRNR INTO (COMPCD, ADDCOMP)
FROM TVKO
WHERE VKORG = I_HEADER-VKORG.
ENDIF.
fill address key --> necessary for emails
ADDR_KEY-ADDRNUMBER = VBDKA-ADRNR.
ADDR_KEY-PERSNUMBER = VBDKA-ADRNP.
ADDR_KEY-ADDR_TYPE = VBDKA-ADDRESS_TYPE.
Fetch servicecontract-data and notice-data for head and position.
US_VEDA_VBELN = VBDKA-VBELN.
US_VEDA_POSNR_LOW = POSNR_LOW.
CALL FUNCTION 'SD_VEDA_GET_PRINT_DATA'
EXPORTING
I_DOCUMENT_NUMBER = US_VEDA_VBELN
I_LANGUAGE = SY-LANGU
I_POSNR_LOW = US_VEDA_POSNR_LOW
TABLES
PRINT_DATA_POS = TKOMSERVP
PRINT_DATA_HEAD = TKOMSERVH
PRINT_NOTICE_POS = TKOMSERVPN
PRINT_NOTICE_HEAD = TKOMSERVHN.
PERFORM GET_CONTROLL_DATA.
PERFORM SENDER.
PERFORM CHECK_REPEAT.
LOOP AT TVBDPA.
VBDPA = TVBDPA.
IF VBDPA-DRAGR EQ SPACE. "Print rejected item?
IF VBDPA-POSNR_NEU NE SPACE. "Item
PERFORM GET_ITEM_SERIALS.
PERFORM GET_ITEM_CHARACTERISTICS.
PERFORM GET_ITEM_BILLING_SCHEDULES.
PERFORM GET_ITEM_PRICES.
PERFORM GET_ITEM_ADDIS.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. "GET_DATA
FORM GET_ITEM_BILLING_SCHEDULES *
In this routine the billing schedules are fetched from the *
database. *
FORM GET_ITEM_BILLING_SCHEDULES.
REFRESH TFPLTDR.
CHECK NOT VBDPA-FPLNR IS INITIAL.
CALL FUNCTION 'BILLING_SCHED_PRINTVIEW_READ'
EXPORTING
I_FPLNR = VBDPA-FPLNR
I_LANGUAGE = NAST-SPRAS
I_VBELN = VBDKA-VBELN
TABLES
ZFPLTDR = TFPLTDR.
ENDFORM. "GET_ITEM_BILLING_SCHEDULES
*& FORM GET_ITEM_ADDIS
Additionals data are fetched from database
FORM GET_ITEM_ADDIS.
CLEAR: TADDI_PRINT.
CALL FUNCTION 'WTAD_ADDIS_IN_SO_PRINT'
EXPORTING
FI_VBELN = VBDKA-VBELN
FI_POSNR = VBDPA-POSNR
FI_LANGUAGE = SY-LANGU
TABLES
FET_ADDIS_IN_SO_PRINT = TADDI_PRINT
EXCEPTIONS
ADDIS_NOT_ACTIVE = 1
NO_ADDIS_FOR_SO_ITEM = 2
OTHERS = 3.
ENDFORM. " GET_ITEM_ADDIS
FORM GET_ITEM_CHARACTERISTICS *
In this routine the configuration data item is fetched from *
the database. *
FORM GET_ITEM_CHARACTERISTICS.
DATA DA_T_CABN LIKE CABN OCCURS 10 WITH HEADER LINE.
DATA: BEGIN OF DA_KEY,
MANDT LIKE CABN-MANDT,
ATINN LIKE CABN-ATINN,
END OF DA_KEY.
REFRESH TKOMCON.
CHECK NOT VBDPA-CUOBJ IS INITIAL AND
VBDPA-ATTYP NE VAR_TYP.
CALL FUNCTION 'VC_I_GET_CONFIGURATION'
EXPORTING
INSTANCE = VBDPA-CUOBJ
LANGUAGE = NAST-SPRAS
PRINT_SALES = CHARX
TABLES
CONFIGURATION = TKOMCON
EXCEPTIONS
OTHERS = 4.
RANGES : DA_IN_CABN FOR DA_T_CABN-ATINN.
Beschreibung der Merkmale wegen Objektmerkmalen auf sdcom-vkond holen
CLEAR DA_IN_CABN. REFRESH DA_IN_CABN.
LOOP AT TKOMCON.
DA_IN_CABN-OPTION = 'EQ'.
DA_IN_CABN-SIGN = 'I'.
DA_IN_CABN-LOW = TKOMCON-ATINN.
APPEND DA_IN_CABN.
ENDLOOP.
CLEAR DA_T_CABN. REFRESH DA_T_CABN.
CALL FUNCTION 'CLSE_SELECT_CABN'
EXPORTING
KEY_DATE = SY-DATUM
BYPASSING_BUFFER = ' '
WITH_PREPARED_PATTERN = ' '
I_AENNR = ' '
IMPORTING
AMBIGUOUS_OBJ_CHARACTERISTIC =
TABLES
IN_CABN = DA_IN_CABN
T_CABN = DA_T_CABN
EXCEPTIONS
NO_ENTRY_FOUND = 1
OTHERS = 2.
Preisfindungsmerkmale / Merkmale auf VCSD_UPDATE herausnehmen
SORT DA_T_CABN.
LOOP AT TKOMCON.
DA_KEY-MANDT = SY-MANDT.
DA_KEY-ATINN = TKOMCON-ATINN.
READ TABLE DA_T_CABN WITH KEY DA_KEY BINARY SEARCH.
IF SY-SUBRC <> 0 OR
( ( DA_T_CABN-ATTAB = 'SDCOM' AND
DA_T_CABN-ATFEL = 'VKOND' ) OR
( DA_T_CABN-ATTAB = 'VCSD_UPDATE' ) ) .
DELETE TKOMCON.
ENDIF.
ENDLOOP.
ENDFORM. "GET_ITEM_CHARACTERISTICS
FORM GET_ITEM_PRICES *
In this routine the price data for the item is fetched from *
the database. *
FORM GET_ITEM_PRICES.
CLEAR: KOMP,
TKOMV.
IF KOMK-KNUMV NE VBDKA-KNUMV OR
KOMK-KNUMV IS INITIAL.
CLEAR KOMK.
KOMK-MANDT = SY-MANDT.
KOMK-KALSM = VBDKA-KALSM.
KOMK-KAPPL = PR_KAPPL.
KOMK-WAERK = VBDKA-WAERK.
KOMK-KNUMV = VBDKA-KNUMV.
KOMK-KNUMA = VBDKA-KNUMA.
KOMK-VBTYP = VBDKA-VBTYP.
KOMK-LAND1 = VBDKA-LAND1.
KOMK-VKORG = VBDKA-VKORG.
KOMK-VTWEG = VBDKA-VTWEG.
KOMK-SPART = VBDKA-SPART.
KOMK-BUKRS = VBDKA-BUKRS_VF.
KOMK-HWAER = VBDKA-WAERS.
KOMK-PRSDT = VBDKA-ERDAT.
KOMK-KURST = VBDKA-KURST.
KOMK-KURRF = VBDKA-KURRF.
KOMK-KURRF_DAT = VBDKA-KURRF_DAT.
ENDIF.
KOMP-KPOSN = VBDPA-POSNR.
KOMP-KURSK = VBDPA-KURSK.
KOMP-KURSK_DAT = VBDPA-KURSK_DAT.
if vbdka-vbtyp ca 'HKNOT6'.
if vbdpa-shkzg ca ' A'.
komp-shkzg = 'X'.
endif.
else.
if vbdpa-shkzg ca 'BX'.
komp-shkzg = 'X'.
endif.
endif.
IF PRICE_PRINT_MODE EQ CHARA.
CALL FUNCTION 'RV_PRICE_PRINT_ITEM'
EXPORTING
COMM_HEAD_I = KOMK
COMM_ITEM_I = KOMP
LANGUAGE = NAST-SPRAS
IMPORTING
COMM_HEAD_E = KOMK
COMM_ITEM_E = KOMP
TABLES
TKOMV = TKOMV
TKOMVD = TKOMVD.
ELSE.
CALL FUNCTION 'RV_PRICE_PRINT_ITEM_BUFFER'
EXPORTING
COMM_HEAD_I = KOMK
COMM_ITEM_I = KOMP
LANGUAGE = NAST-SPRAS
IMPORTING
COMM_HEAD_E = KOMK
COMM_ITEM_E = KOMP
TABLES
TKOMV = TKOMV
TKOMVD = TKOMVD.
ENDIF.
ENDFORM. "GET_ITEM_PRICES
FORM GET_HEADER_PRICES *
In this routine the price data for the header is fetched from *
the database. *
FORM GET_HEADER_PRICES.
LOOP AT TVBDPA.
CALL FUNCTION 'SD_TAX_CODE_MAINTAIN'
EXPORTING
KEY_KNUMV = VBDKA-KNUMV
KEY_KPOSN = TVBDPA-POSNR
I_APPLICATION = ' '
I_PRICING_PROCEDURE = VBDKA-KALSM
TABLES
XKOMV = TKOMV.
ENDLOOP.
IF PRICE_PRINT_MODE EQ CHARA.
CALL FUNCTION 'RV_PRICE_PRINT_HEAD'
EXPORTING
COMM_HEAD_I = KOMK
LANGUAGE = NAST-SPRAS
IMPORTING
COMM_HEAD_E = KOMK
TABLES
TKOMV = TKOMV
TKOMVD = TKOMVD.
ELSE.
CALL FUNCTION 'RV_PRICE_PRINT_HEAD_BUFFER'
EXPORTING
COMM_HEAD_I = KOMK
LANGUAGE = NAST-SPRAS
IMPORTING
COMM_HEAD_E = KOMK
TABLES
TKOMV = TKOMV
TKOMVD = TKOMVD.
ENDIF.
ENDFORM. "GET_HEADER_PRICES
FORM PRINT_DATA *
Print Quotation *
FORM PRINT_DATA.
DATA: ls_control TYPE ssfctrlop.
data: OUTPUT_OPTIONS TYPE SSFCOMPOP,cf_retcode type sy-subrc.
DATA: ls_print_data_to_read TYPE lbbil_print_data_to_read.
DATA: ls_addr_key LIKE addr_key.
DATA: ls_dlv-land LIKE vbrk-land1.
DATA: ls_job_info TYPE ssfcrescl.
DATA: ls_control_param TYPE ssfctrlop.
DATA: ls_composer_param TYPE ssfcompop.
DATA: ls_recipient TYPE swotobjid.
DATA: ls_sender TYPE swotobjid.
DATA: NAST_ANZAL LIKE NAST-ANZAL. "Number of outputs (Orig. + Cop.)
DATA: NAST_TDARMOD LIKE NAST-TDARMOD. "Archiving only one time
DATA: ls_bil_invoice TYPE lbbil_invoice.
SELECT SINGLE SFORM INTO LF_FORMNAME
FROM TNAPR
WHERE KSCHL = NAST-KSCHL
AND NACHA = NAST-NACHA.
*IF NAST-KSCHL = 'ZORD'.
lf_formname = 'ZSDORDERCONF'.
*ELSEIF NAST-KSCHL = 'ZOR1'.
lf_formname = 'ZSDORDERCONF'.
*ELSEIF NAST-KSCHL = 'ZOR2'.
lf_formname = 'ZCSORDERCONF'.
ENDIF.
determine smartform function module for invoice
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = lf_formname
IMPORTING
fm_name = lf_fm_name
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3.
IF sy-subrc <> 0.
ENDIF.
READ TABLE I_HEADER INDEX 1.
ls_controL-no_dialog = 'X'.
if sy-ucomm = 'VIEW'.
LS_CONTROL-PREVIEW = 'X'.
endif.
CALL FUNCTION LF_FM_NAME
EXPORTING
control_parameters = ls_control
OUTPUT_OPTIONS = OUTPUT_OPTIONS
SO_VBELN = I_HEADER-VBELN
SO_AUDAT = I_HEADER-AUDAT
SO_REPEAT = REPEAT
SO_TYPE = I_HEADER-VBTYP
SO_CADD = ADDCOMP
SO_CCODE = COMPCD
TABLES
I_HEADER = I_HEADER
TKOMV = TKOMV
I_ITEM = TVBDPA
I_XDATA = I_XDATA
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.
ENDFORM. "PRINT_DATA
FORM PROTOCOL_UPDATE *
The messages are collected for the processing protocol. *
FORM PROTOCOL_UPDATE.
CHECK XSCREEN = 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.
ENDFORM. "PROTOCOL_UPDATE
FORM SENDER *
This routine determines the address of the sender (Table VKO) *
FORM SENDER.
SELECT SINGLE * FROM TVKO WHERE VKORG = VBDKA-VKORG.
IF SY-SUBRC NE 0.
SYST-MSGID = 'VN'.
SYST-MSGNO = '203'.
SYST-MSGTY = 'E'.
SYST-MSGV1 = 'TVKO'.
SYST-MSGV2 = SYST-SUBRC.
PERFORM PROTOCOL_UPDATE.
EXIT.
ENDIF.
CLEAR GV_FB_ADDR_GET_SELECTION.
GV_FB_ADDR_GET_SELECTION-ADDRNUMBER = TVKO-ADRNR. "SADR40A
CALL FUNCTION 'ADDR_GET'
EXPORTING
ADDRESS_SELECTION = GV_FB_ADDR_GET_SELECTION
ADDRESS_GROUP = 'CA01'
IMPORTING
SADR = SADR
EXCEPTIONS
OTHERS = 01.
IF SY-SUBRC NE 0.
CLEAR SADR.
ENDIF. "SADR40A
VBDKA-SLAND = SADR-LAND1.
IF SY-SUBRC NE 0.
SYST-MSGID = 'VN'.
SYST-MSGNO = '203'.
SYST-MSGTY = 'E'.
SYST-MSGV1 = 'SADR'.
SYST-MSGV2 = SYST-SUBRC.
PERFORM PROTOCOL_UPDATE.
ENDIF.
SELECT SINGLE * FROM TVBUR WHERE VKBUR = VBDKA-VKBUR.
IF SY-SUBRC NE 0.
SYST-MSGID = 'VN'.
SYST-MSGNO = '203'.
SYST-MSGTY = 'E'.
SYST-MSGV1 = 'TVBUR'.
SYST-MSGV2 = SYST-SUBRC.
PERFORM PROTOCOL_UPDATE.
ENDIF.
ENDFORM. "SENDER
*& Form GET_ITEM_SERIALS
This routine give back the serialnumbers of salesdocument *
position. The numbers are processed as print-lines in the *
table KOMSER_PRINT. *
--> US_VBELN Salesdocument
--> US_POSNR Position of the salesdocument
FORM GET_ITEM_SERIALS.
DATA: KEY_DATA LIKE RSEROB,
SERNOS LIKE RSEROB OCCURS 0 WITH HEADER LINE.
KEY_DATA-TASER = 'SER02'.
KEY_DATA-SDAUFNR = VBDKA-VBELN.
KEY_DATA-POSNR = VBDPA-POSNR.
IF KEY_DATA-SDAUFNR IS INITIAL AND NOT
KEY_DATA-POSNR IS INITIAL.
beim Anlegen ist Belegnummer leer - deshalb Dummy-Belegnummer
KEY_DATA-SDAUFNR = CHAR$.
ENDIF.
Read the Serialnumbers of a Position.
REFRESH: TKOMSER,
TKOMSER_PRINT.
CALL FUNCTION 'GET_SERNOS_OF_DOCUMENT'
EXPORTING
KEY_DATA = KEY_DATA
TABLES
SERNOS = SERNOS
EXCEPTIONS
KEY_PARAMETER_ERROR = 1
NO_SUPPORTED_ACCESS = 2
NO_DATA_FOUND = 3
OTHERS = 4.
IF SY-SUBRC NE 0 AND
SY-SUBRC NE 3.
PERFORM PROTOCOL_UPDATE.
ENDIF.
CHECK SY-SUBRC EQ 0.
Serialnummern übergeben
TKOMSER-VBELN = SERNOS-SDAUFNR.
TKOMSER-POSNR = SERNOS-POSNR.
LOOP AT SERNOS.
TKOMSER-SERNR = SERNOS-SERNR.
APPEND TKOMSER.
ENDLOOP.
Process the stringtable for Printing.
CALL FUNCTION 'PROCESS_SERIALS_FOR_PRINT'
EXPORTING
I_BOUNDARY_LEFT = '(_'
I_BOUNDARY_RIGHT = '_)'
I_SEP_CHAR_STRINGS = ',_'
I_SEP_CHAR_INTERVAL = '_-_'
I_USE_INTERVAL = 'X'
I_BOUNDARY_METHOD = 'C'
I_LINE_LENGTH = 50
I_NO_ZERO = 'X'
I_ALPHABET = SY-ABCDE
I_DIGITS = '0123456789'
I_SPECIAL_CHARS = '-'
I_WITH_SECOND_DIGIT = ' '
TABLES
SERIALS = TKOMSER
SERIALS_PRINT = TKOMSER_PRINT
EXCEPTIONS
BOUNDARY_MISSING = 01
INTERVAL_SEPARATION_MISSING = 02
LENGTH_TO_SMALL = 03
INTERNAL_ERROR = 04
WRONG_METHOD = 05
WRONG_SERIAL = 06
TWO_EQUAL_SERIALS = 07
SERIAL_WITH_WRONG_CHAR = 08
SERIAL_SEPARATION_MISSING = 09.
IF SY-SUBRC NE 0.
PERFORM PROTOCOL_UPDATE.
ENDIF.
ENDFORM. " GET_ITEM_SERIALS
*eject
*& Form GET_CONTROLL_DATA
Checks if servicedata for the header exists. *
Checks if servicedata for the position exists. *
Checks if noticedata for the header exists. *
Checks if noticedata for the position exists. *
FORM GET_CONTROLL_DATA.
DATA: LINES TYPE I.
Exists servicedata for the header?
DESCRIBE TABLE TKOMSERVH LINES LINES.
IF LINES GT 0.
STEU-VDKEX = 'X'.
ENDIF.
Exists servicedata for the position?
DESCRIBE TABLE TKOMSERVP LINES LINES.
IF LINES GT 0.
STEU-VDPEX = 'X'.
ENDIF.
Exists noticedata for the header?
DESCRIBE TABLE TKOMSERVHN LINES LINES.
IF LINES GT 0.
STEU-KBKEX = 'X'.
ENDIF.
Exists noticedata for the position?
DESCRIBE TABLE TKOMSERVPN LINES LINES.
IF LINES GT 0.
STEU-KBPEX = 'X'.
ENDIF.
ENDFORM. " GET_CONTROLL_DATA
*eject
*& Form get_fax_land
text
-->P_NAST_TLAND text
form get_fax_land using p_nast_land like nast-tland.
DATA L_land like nast-tland .
clear L_land.
IF NOT addr_key-addrnumber IS INITIAL.
CALL FUNCTION 'WFMC_FAXNUMBER_FOR_ADDRESS'
EXPORTING
adrnr = addr_key-addrnumber
IMPORTING
tland = L_land
EXCEPTIONS
addr_not_exist = 1
OTHERS = 2.
IF sy-subrc = 0 AND NOT L_land IS INITIAL.
p_nast_land = L_land.
ENDIF.
ENDIF.
endform. " get_fax_land
*& Form get_data1
text
-->P_LS_PRINT_DATA_TO_READ text
<--P_LS_ADDR_KEY text
<--P_LS_DLV_LAND text
<--P_LS_BIL_INVOICE text
<--P_CF_RETCODE text
FORM get_data1
USING IS_PRINT_DATA_TO_READ TYPE LBBIL_PRINT_DATA_TO_READ
CHANGING CS_ADDR_KEY LIKE ADDR_KEY
CS_DLV-LAND LIKE VBRK-LAND1
CS_BIL_INVOICE TYPE LBBIL_INVOICE
CF_RETCODE.
IF NAST-OBJKY+10 NE SPACE.
NAST-OBJKY = NAST-OBJKY+16(10).
ELSE.
NAST-OBJKY = NAST-OBJKY.
ENDIF.
read print data
CALL FUNCTION 'LB_BIL_INV_OUTP_READ_PRTDATA'
EXPORTING
IF_BIL_NUMBER = NAST-OBJKY
IF_PARVW = NAST-PARVW
IF_PARNR = NAST-PARNR
IF_LANGUAGE = NAST-SPRAS
IS_PRINT_DATA_TO_READ = IS_PRINT_DATA_TO_READ
IMPORTING
ES_BIL_INVOICE = CS_BIL_INVOICE
EXCEPTIONS
RECORDS_NOT_FOUND = 1
RECORDS_NOT_REQUESTED = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
error handling
CF_RETCODE = SY-SUBRC.
PERFORM PROTOCOL_UPDATE.
ENDIF.
get nast partner adress for communication strategy
PERFORM GET_ADDR_KEY USING CS_BIL_INVOICE-HD_ADR
CHANGING CS_ADDR_KEY.
get delivery land
PERFORM GET_DLV-LAND USING CS_BIL_INVOICE-HD_GEN
CHANGING CS_DLV-LAND.
ENDFORM. " get_data1
*& Form GET_ADDR_KEY
text
-->P_CS_BIL_INVOICE_HD_ADR text
<--P_CS_ADDR_KEY text
FORM GET_ADDR_KEY USING IT_HD_ADR TYPE LBBIL_INVOICE-HD_ADR
CHANGING CS_ADDR_KEY LIKE ADDR_KEY.
FIELD-SYMBOLS -ADDRESS_TYPE.
ENDIF.
ENDFORM. " GET_ADDR_KEY
*& Form GET_DLV-LAND
text
-->P_CS_BIL_INVOICE_HD_GEN text
<--P_CS_DLV_LAND text
FORM GET_DLV-LAND USING IT_HD_GEN TYPE LBBIL_INVOICE-HD_GEN
CHANGING CS_DLV-LAND LIKE VBRK-LAND1.
CS_DLV-LAND = IT_HD_GEN-DLV_LAND.
ENDFORM. " GET_DLV-LAND
*& Form set_print_data_to_read
text
-->P_LF_FORMNAME text
<--P_LS_PRINT_DATA_TO_READ text
<--P_CF_RETCODE text
FORM set_print_data_to_read USING IF_FORMNAME LIKE TNAPR-SFORM
CHANGING CS_PRINT_DATA_TO_READ TYPE LBBIL_PRINT_DATA_TO_READ
CF_RETCODE.
FIELD-SYMBOLS: TYPE XFELD.
DATA: LT_FIELDLIST TYPE TSFFIELDS.
set print data requirements
DO.
ASSIGN COMPONENT SY-INDEX OF STRUCTURE
CS_PRINT_DATA_TO_READ TO = 'X'.
ENDDO.
CALL FUNCTION 'SSF_FIELD_LIST'
EXPORTING
FORMNAME = IF_FORMNAME
VARIANT = ' '
IMPORTING
FIELDLIST = LT_FIELDLIST
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
error handling
CF_RETCODE = SY-SUBRC.
PERFORM PROTOCOL_UPDATE.
ENDIF.
ENDFORM. " set_print_data_to_read
*& Form set_print_param
text
-->P_LS_ADDR_KEY text
-->P_LS_DLV_LAND text
<--P_LS_CONTROL_PARAM text
<--P_LS_COMPOSER_PARAM text
<--P_LS_RECIPIENT text
<--P_LS_SENDER text
<--P_CF_RETCODE text
FORM set_print_param using IS_ADDR_KEY LIKE ADDR_KEY
IS_DLV-LAND LIKE VBRK-LAND1
CHANGING CS_CONTROL_PARAM TYPE SSFCTRLOP
CS_COMPOSER_PARAM TYPE SSFCOMPOP
CS_RECIPIENT TYPE SWOTOBJID
CS_SENDER TYPE SWOTOBJID
CF_RETCODE TYPE SY-SUBRC.
DATA: LS_ITCPO TYPE ITCPO.
DATA: LF_REPID TYPE SY-REPID.
DATA: LF_DEVICE TYPE TDDEVICE.
DATA: LS_RECIPIENT TYPE SWOTOBJID.
DATA: LS_SENDER TYPE SWOTOBJID.
LF_REPID = SY-REPID.
CALL FUNCTION 'WFMC_PREPARE_SMART_FORM'
EXPORTING
PI_NAST = NAST
PI_COUNTRY = IS_DLV-LAND
PI_ADDR_KEY = IS_ADDR_KEY
PI_REPID = LF_REPID
PI_SCREEN = XSCREEN
IMPORTING
PE_RETURNCODE = CF_RETCODE
PE_ITCPO = LS_ITCPO
PE_DEVICE = LF_DEVICE
PE_RECIPIENT = CS_RECIPIENT
PE_SENDER = CS_SENDER.
IF CF_RETCODE = 0.
MOVE-CORRESPONDING LS_ITCPO TO CS_COMPOSER_PARAM.
CS_CONTROL_PARAM-NO_OPEN
CS_CONTROL_PARAM-NO_CLOSE
CS_CONTROL_PARAM-DEVICE = LF_DEVICE.
CS_CONTROL_PARAM-NO_DIALOG = 'X'.
CS_CONTROL_PARAM-PREVIEW = XSCREEN.
CS_CONTROL_PARAM-GETOTF = LS_ITCPO-TDGETOTF.
CS_CONTROL_PARAM-LANGU = NAST-SPRAS.
CS_CONTROL_PARAM-REPLANGU1
CS_CONTROL_PARAM-REPLANGU2
CS_CONTROL_PARAM-REPLANGU3
CS_CONTROL_PARAM-STARTPAGE
ENDIF.
ENDFORM. " set_print_param
*& Form add_smfrm_prot
text
--> p1 text
<-- p2 text
FORM add_smfrm_prot .
DATA: LT_ERRORTAB TYPE TSFERROR.
DATA: LF_MSGNR TYPE SY-MSGNO.
FIELD-SYMBOLS: TYPE LINE OF TSFERROR.
get smart form protocoll
CALL FUNCTION 'SSF_READ_ERRORS'
IMPORTING
ERRORTAB = LT_ERRORTAB.
add smartform protocoll to nast protocoll
LOOP AT LT_ERRORTAB ASSIGNING .
CLEAR LF_MSGNR.
LF_MSGNR = <FS_ERRORTAB>-ERRNUMBER.
CALL FUNCTION 'NAST_PROTOCOL_UPDATE'
EXPORTING
MSG_ARBGB = -MSGID
MSG_NR = LF_MSGNR
MSG_NR = -MSGV4
EXCEPTIONS
OTHERS = 1.
ENDLOOP.
ENDFORM. " add_smfrm_prot
*& Form protocol_update_spool
text
-->P_1115 text
-->P_LS_SPOOLID text
-->P_SPACE text
-->P_SPACE text
-->P_SPACE text
FORM protocol_update_spool USING SYST_MSGNO
P_LS_SPOOLID
P_SPACE1
P_SPACE2
P_SPACE3.
syst-msgid = 'VN'.
syst-msgno = syst_msgno.
syst-msgv1 = p_ls_spoolid.
CONDENSE syst-msgv1.
CHECK xscreen = 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 = p_space1
msg_v3 = p_space2
msg_v4 = p_space3
EXCEPTIONS
OTHERS = 1.
ENDFORM. " protocol_update_spool
This is Include ZSDI0003
*& Include ZSDI0003
TABLES: 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
VBAK, "Sales Document Header
VBAP, "Sales Document Item
VBPA, "Sales Document: Partner
T001, "Company codes
MAST, "Material to BOM Link
STKO. "BOM Header
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,
1) you shouldn't have to do anything with the properties file written for a specific Locale.
2) check this out: http://java.sun.com/j2se/1.4/docs/guide/intl/encoding.doc.html
3) BIG5 is BIG5 everywhere.
4) don't know about this one
5,6,7) If you have Windows 98 Chinese Edition, you can probably switch back and forth between English and Chinese -- just put the Chinese characters in a string much like the normal characters. Otherwise, you'll have to enter the Unicode char.
V.V. -
HELP - Placing a Multiple Page PDF
I need help some help for a large job I'm doing at work. You may need to have print shop experience to answer this question or be good at scripting...
These pdf's have already been created and are 7"x8.5". I am placing them on a landscape legal size document because each placed pdf is repeated to have 2 up on one sheet. I don't know if there is any easier way to do this besides using step and repeat for each individual page (each finished document has about 700 pages and becomes very time consuming). The other problem is I have to rotate the right side of the odd pages 180 degrees and the left side of the even pages 180 degrees so the tabs can bleed and be edge trimmed after the document is printed (2-sided printing).
I've used the scripts from cs3 to place the pages in so if anyone has any ideas or a way to do all of the steps at once would be very helpful!Go FIle>Place
On the bottom left hand corner of the Place Dialog Box you will see "Show Import Options"
When you see the options you'll know exactly what to do
Also, if you look up PDFPLACER.JSX
It's a script that can place many pages of a pdf in a document one after the other.
To use Scripts, first download the one mentioned
Go to InDesign and Windows>Automation>Scripts and go to the user folder
Right click inside it or CMD click on Mac.
Show in Finder/Explorer
Copy the script into that folder
Go back to InDesign and you'll see the script there
Run the script
Do a dummy run (test) first on a blank document with say 5 pages until you get the hang of how it works. -
Need help with centering my page
I have done everything I can think of, including going through the many posts here to try and correct this with no luck
Please look at:
http://ebnerproductions.com
and
http://ebnerproductions.com/index2.htm
The first was built with basically just html.
The 2nd was done "properly" I believe with CSS and HTML. The 2nd also has "div - #wrapper"
left and right margins are auto also... nothing changed.
Do I need to change something in the CSS from absolute, to fixed or inherit?
I am completely lost at this point and really really need help.
Thank you again in advance....
Adam EbnerYour CSS is corrupted -
:visited {
color: #6CF;<meta name="keywords"
(note the appearance of the meta tag within the :visited selector)
Fix that.
Then you would need to add this rule to the fixed CSS by changing this -
body {
background-color: #EBEBEB;
background-image: url(BG.jpg);
margin-left: 75px;
margin-top: 75px;
background-repeat: no-repeat;
to this -
body {
background-color: #EBEBEB;
background-image: url(BG.jpg);
margin-left: 75px;
margin-top: 75px;
background-repeat: no-repeat;
width:1346px;
margin:75px auto;
Then ask yourself how many people will even see this page center since 1346 is way wider than the average browser viewport width on most systems. -
I need to supply a multiple page pdf download on my site...
How do I upload a multiple page pdf on my site and have clients able to link to it/find it and download it? I also want to have the pdf able to be accessed from a separate blog. Is this possible?! I have GoLive CS2.
TangledRibbon,
You can just:
1) Save it to the folder where it belongs (where you have your site on your computer);
2) Open the Site File and click any page/image/whatever;
3) Press the Refresh;
Now the PDF should appear in your site;
4) Create a link to it from one or more HTML pages, in whichever way you create links (you may just type something and turn it into a link, browsing to select the PDF);
5) Upload as usual (incremental or otherwise) to get it accessible for others.
You may link to it from anywhere else by its URL once it is there. -
Need help in displaying multiple attachments in a OAF Page
Hi,
I need to display attachemts of requisition line in a OAF Page(Notification Detials Page)and the attachments can be more than one.My custom VO returns it as a single string like url1, url2.. etc.
I need to show them as seperate links.
I tried using the Item Style as LINK.But it is not working.It is prefixing the server url before the View Attribute and creating a single link.
Any help in this regard will be appreciated.Thanks in advance.
SriniHi skeerthi,
If you are using the core attachments table (FND_ATTACHED_DOCUMENTS and the like), you can have a look on the Developer's Guide on chapter 4: Implementing Specific UI Features, section "Attachments", there is a seeded region available for displaying multiple attachments.
If you are not, then i'd recommend refactoring :D... Just kidding, it would be nice to use the core feature, but if the table is custom, and the links are stored separated by commas, you will have to write controller code to implement that. That can be done by:
1) Creating an Application module method that uses StringTokenizer to tokenize the attribute String (use getViewObject().getCurrentRow().getAttribute() to get the comma-separated value) and return that to the controller
2) In the controller, receive the StringTokenizer and for each token, use the api createWebBean() to create an OALinkBean and add it to a layout region using addIndexedChild() api.
This way you will dinamically create a Link for each attachment. If your layout region is, for example, tableLayout, you can create a rowLayout for each token, then create a Link, add the link to the row layout and finally add it to the tableLayout. By doing so, you will create a table-style attachment region.
Hope it Helps
Thiago -
Hi Friends,
I am working on a smartform. This is a modification to the existing form. In the Smartform i have 3 pages. For page2, there are 3 scenarios. There is a custom table (Say gt_customtable). It contains Document ID field (DOCID), and for each document id, it has a indicator field (Say indicator = E / S). E = Emergency order, and S = Stock order.
When the indicator is E for the docid's, then Scenario 1 should be printed, that is Emergency layout should be printed.
When the indicator is S for the docid's, then Scenario 2 should be printed, that is Stock layout should be printed.
When the indicator is both E & S, then Scenario 3 should be printed, that is Emergency layout should be printed first, and then Stock layout should be printed.
There is an internal table called gt_page2, which has both the Header data, and Line items data.
The header data is same for all the scenarios, and need not be changed. But coming to the Line items data, emergency layout is different from stock layout.
How do i approach this situation. Can you please help me out here.
Thanks,
NikhilHi Suneel,
Thank you very much for replying. Actually Page3 has nothing to do with page2 here. The Issue is Page2 has 3 scenarios. The layout for each of 3 scenarios is different. Indicator is E for Page2-scenario 1 layout, and S for Page2-scenario 2 layout. But when the indicator is both E, and S....then Scenario1 is printed first, then scenario 2.
Do we need to create 2 tables, one for each scenario, each with different layout. Or create a flag, and depending on this flag, can we play with text elements in the layout by giving them in the conditions tab.
Thanks,
Nikhil
Maybe you are looking for
-
Sql loader not able to load more than 4.2 billion rows
Hi, I am facing a problem with Sql loader utility. The Sql loader process stops after loading 342 gigs of data i.e it seems to load 4.294 billion rows out of 6.9 billion rows and the loader process completes without throwing any error. Is there any l
-
Hi there, I have noticed that when i serach for images in safari it comes up with a list similar to the desptop page with a grid of images, then when you select anygooles mobile interface opens for previewing. (The black interface) the pictures in th
-
Hi, I have some doubts reg CPU patches.In CPU patches we need to apply three patches 1)Oracle E-Business Suite Database Homes ebiz-database 2)Oracle E-Business Suite Oracle Fusion Middleware and Developer Suite Homes Forms and reports homes i mean...
-
Date validation with minValue on 1st February
Here is my validation on a textfield which expect a date : var dateValidation = new Spry.Widget.ValidationTextField("dateValidation", "date", {isRequired:false, format:"dd/mm/yyyy", validateOn:["blur"], minValue:"31/01/2008", useCharacterMasking:true
-
ITunes cancels my podcast subscriptions
I listen to most podcasts in my car, so I copy the mp3s from the iTunes library instead of playing them there. So iTunes thinks I am not listening to a subscription and automatically cancels it. Is there any way to turn off this "feature". Thanks.