Smartform to HTML conversion
Hi,
I need to convert Smartform data stream into HTML format and
pass the same to Webdynpro application where it will be displayed on the browser.
I have specified Smartform output format as 'XSF output+HTML'.
Use of BSP application is ruled out due to certain limitations.
The FM CONVERT_OTF returns data in ASCII or PDF format only.
Can any one tell some Function Module name to convert
Smartform data to HTML format or any other way out?
thanks.
check out this link
Smartform to HTML conversion
thnks
jaideep
*reward points if useful
Similar Messages
-
Hi Guru's,
Please help me.
I want to display Smartforms in HTML Format.
i.e when I run my Tcode inspite of Print Preview the data should open in HTML Format.
Thanks in Advance.Chk this..
http://help.sap.com/saphelp_nw04/helpdata/EN/59/cd7da407d711d5b66f006094192fe3/content.htm
Re: FM for conversion of graphical display of spool to html
Regards,
Midhun Abraham
Edited by: Midhun Abraham on Oct 11, 2008 9:35 AM -
I just installed Kablink Teaming 2.1 on SLES11_X64 and can not view uploaded files. I get the following error.
HTML Conversion Error
Error: com.sun.star.connection.NoConnectException: java.net.ConnectException: Connection refused
I checked and made sure I was pointing to the right place for fonts, and all my folders had correct rights. Everything looks good, and I can download the files, I just can't use the view feature.
Any help?There is information about WebDAV and edit-in-place using various
versions of Office on Windows 7 in the Novell Teaming 2.1 readme. You
might want to check that out, if you haven't already.
In terms of using Novell's OO edition for document conversion, it's my
experience that Novell's version of OO installed on Linux does not
contain all the features of OO regarding document conversion.
Specifically, the installation guide has a section entitled "Installing
OpenOffice.org as the Document Converter for Teaming" that talks about
when running the OO installer, to use the custom option and select ALL
optional components. Some of these components are additional conversion
handlers for OO that have not been included in the version of OO Novell
includes with Linux.
Having said that, you are correct in pointing out that the Stellent
converters used in Novell Teaming provide a much richer set of
converters than does OO used with Kablink Teaming. That's one of the
benefits of the Novell Teaming product vs. Kablink Teaming.
MacWiz.
On 3/29/10 3:06 PM, csday wrote:
>
> I made a lot of changes and fixes over the weekend and found out some
> differences between teaming and kablink. I am running MS office 2k7 on
> top of Win7. Edit does not work correctly unless you download the MS
> office web managment pack from early May, and I found out that I must
> run the different office app's i.e "word, excel, etc.." in compatibility
> mode "winxpsp3". That is fine and dandy except that doing that broke my
> ability to open office files on my local workstation. With office 2k3
> on xp it works great with no issues. I did get the OpenOffice server
> running and the only thing that fixed was viewing my .doc and .xls
> files, I could not view files uploaded from office 2k7 in xml form. If
> I could find OpenOffice Novell edition for Linux, I am sure it would
> work fine.
>
> I am not sure what to do with my Win7 machines running Office 2007, the
> changes required to make it work with teaming seem to break other
> functions of the app. Right now I am running Novell Teaming and Kablink
> side by side to see which is going to be a better fit for us. One big
> pro for Novell Teaming is I can view visio's and all office types to
> include xlm format, I'm sure OO novell edition will fix that, but
> OpenOffice won't be able to view those visio's.
>
> -
Smartform to PDF conversion having issue with Russian address
We are having a business situation we are the invoice in English language and the the address of ship-to party and sold-to party in Russian.
The issue we face is.
When the smartform is converted to PDF the Russian specific characters are missing in the PDF output. The same are perfect in the smart form print preview.
we are using CONVERT_OTF function module and we are getting the Russian characters correctly in the table parameter OTF.
We are using "SX_TABLE_LINE_WIDTH_CHANGE" and " SO_DOCUMENT_SEND_API1"
function module to attach and mail the pdf.
In the PDF we are missing the Russian specific characters .
For Example in "Sedláčkova čč" the output is "Sedláčkova " means "čč" is mising
Thanks in advance
Regards
JobyHi,
As described in note 999712 - PDF conversion for Unicode, there is a new unicode PDF converter PDFUC.
It depends on the SAP Version if you have to install the device type or not. You can check also via SPAD -> Full Administration -> Device Types -> Display.
You can pass the device type in the output options. I used:
SSFCTRLOP-no_dialog = 'X'.
SSFCTRLOP-getotf = 'X'.
SSFCTRLOP-langu = 'EN'.
SSFCOMPOP-tdprinter = 'PDFUC'.
If you specify a device other than printer in the control options like SSFCTRLOP-device = 'TELEFAX'., above will not work as
SSFCOMPOP-tdprinter is only evaluated for printer.
You have to check in SCOT -> Settings -> Device Types for Format Conversion.
You can make a general entry or for a specific language:
PDF SAPscript/Smart Forms PDFUC
PDF EN English SAPscript/Smart Forms PDFUC
Let me know if you get this working.
Jeroen. -
RTF to HTML conversion - Non-English Text
Hello,
I am trying to convert a RTF file to a HTML file. Below is the code that I am using. I am not able to convert non-english text properly (German, French, Swedish etc). I like to know the proper way of doing this and if there is a more efficient way of doing this conversion in general (It is taking around 1 minute for this to complete on a 300 MHz, 320 MB iBook). Thanks.
Regards
Sarat
Code Begins
public class FormatConverter {
private DefaultStyledDocument tempRTFDoc;
private HTMLEditorKit htmlKit;
private RTFEditorKit rtfKit;
public FormatConverter () {
tempRTFDoc = new DefaultStyledDocument();
htmlKit = new HTMLEditorKit();
rtfKit = new RTFEditorKit();
public String convert(String strText) {
String strResult = "";
StringReader reader = new StringReader(strText);
try {
tempRTFDoc.remove(0,tempRTFDoc.getLength());
rtfKit.read(reader,tempRTFDoc,0);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
htmlKit.write(byteArrayOutputStream,tempRTFDoc,0,tempRTFDoc.getLength());
strResult = byteArrayOutputStream.toString();
catch(IOException ie){}
catch(BadLocationException ble){}
return strResult;
public static void main(String args[]) {
// Read the rtf file from disk
FileInputStream in = null;
try {
in = new FileInputStream("sample.rtf");
} catch (java.io.FileNotFoundException ioe) {
System.out.println("sample.rtf file not found");
byte []input = new byte[10000];
try {
in.read(input);
} catch (java.io.IOException ioe) {
System.out.println("Error reading from sample.rtf");
// Do the conversion
FormatConverter conv = new FormatConverter();
String strHTML = conv.convert(new String(input));
// Write the html file to disk
FileWriter out = null;
try {
out = new FileWriter("output.html");
} catch (java.io.IOException ioe) {
System.out.println("Error creating file output.html");
try {
for (int i = 0; i < strHTML.length(); i++)
out.write(strHTML.charAt(i));
} catch (java.io.IOException ioe) {
System.out.println("Error writing to file output.html");
// Close the files
try {
if(in != null)
in.close();
if(out != null)
out.close();
} catch (java.io.IOException ioe) {
System.out.println("Error closing files");
System.out.println("Conversion done");
System.exit(0);
Code Endshi,
i'm also trying to do the same thing (convert rtf to html). i was wondering if your conversion handles tables and if so if you could post the code as i'm having trouble finding out info about rtf's.
in terms of stripting out the body tags there are a number of different ways of doing this, here's one way>
myBigHtmlString = your html doc loaded in to a string;
String[] tagsToStripOutArray = {"<html>","</html>","<body>", "</body>", "etc", "etc"};
int pos=0;
for (int x=0; tagsToStripOutArray.length; x++) {
pos = myBigHtmlString.indexOf(tagsToStripOutArray[x]);
if (pos != -1){ // if tag exists in string strip it out
myBigHtmlString = myBigHtmlString.substring(0,pos)+myBigHtmlString.substring(pos+(tagsToStripOutArray[x].length());
}// end for
i haven't compiled this so there maybe errors,
cheers,
ben -
Xml to html conversion using xslt
xml contains exponential no i.e. number in scientific notation. When it is converd to HTML, we get NaN for that number. It happens in JDK 1.4 i.e. WLS8.1 with jdk 1.4 bea jrockit jvm.
It worked fine with wls7 using xalan-j_2_1_0/bin/xalan.jar
ANy solution?Do you know of a method in the xdk that takes a well formed HTML doc and using xsd / xslt convert back to original xml spec?
Because you created (and as long as you create) the HTML from XML it will be well formed (every tag will be ended with an end-tag) and you can therefore transform it back into XML.
Most times it will not be possible to convert HTML found on the 'internet' into XML because this HTML is not well formed. For example, many people forget to end a paragraph of text within HTML with the </p> tag.
We are evaluating using xslt to convert the XML to a form based medium for content maintenance. Wondering if once a XML document is parsed to HTML (DOM) can it be parsed back to XML for subsequent update to stored value in blob column. Specifically interested in conversion (parser) from HTML to XML
Simply can HTML (in DOM format validated against a xsd) be transformed back to XML ? -
Hello all,
I've been searching SDN for help with creating an email in html format via smartforms. Pavan Bayyapu's blog was really helpful and I've also used program SF_XSF_DEMO_MAIL as the basis for my program. I followed their examples exactly but my emails always appear as a .MTL attachment, never as just the body of the email.
I tried removing the file name from lo_mime_helper->set_main_html and from lo_mime_helper->add_binary_part as suggested by some other folks but I haven't had any success.
Has anyone solved this same issue? Maximum points will be given to helpful suggestions.
Thank you.
(This message also posted on the ABAP forum)hi
In print program of smart form use this function module.
WWW_LIST_TO_HTML
Thanks,
Usha -
Email smartform in html format
Hello all,
I've been searching SDN for help with creating an email in html format via smartforms. Pavan Bayyapu's blog was really helpful and I've also used program SF_XSF_DEMO_MAIL as the basis for my program. I followed their examples exactly but my emails always appear as a .MTL attachment, never as just the body of the email.
I tried removing the file name from lo_mime_helper->set_main_html and from lo_mime_helper->add_binary_part as suggested by some other folks but I haven't had any success.
Has anyone solved this same issue? Maximum points will be given to helpful suggestions.
Thank you.<a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/59/cd7da407d711d5b66f006094192fe3/content.htm">converting SF to html format</a>
Here is the code to send the Smartform to mail as PDF attachment.
*& Report ZTEST_PDF_MAIL
REPORT ZTEST_PDF_MAIL.
Internal Table declarations
DATA: I_OTF TYPE ITCOO OCCURS 0 WITH HEADER LINE,
I_TLINE TYPE TABLE OF TLINE WITH HEADER LINE,
I_RECEIVERS TYPE TABLE OF SOMLRECI1 WITH HEADER LINE,
I_RECORD LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE,
Objects to send mail.
I_OBJPACK LIKE SOPCKLSTI1 OCCURS 0 WITH HEADER LINE,
I_OBJTXT LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE,
I_OBJBIN LIKE SOLISTI1 OCCURS 0 WITH HEADER LINE,
I_RECLIST LIKE SOMLRECI1 OCCURS 0 WITH HEADER LINE,
Work Area declarations
WA_OBJHEAD TYPE SOLI_TAB,
W_CTRLOP TYPE SSFCTRLOP,
W_COMPOP TYPE SSFCOMPOP,
W_RETURN TYPE SSFCRESCL,
WA_DOC_CHNG TYPE SODOCCHGI1,
W_DATA TYPE SODOCCHGI1,
WA_BUFFER TYPE STRING, "To convert from 132 to 255
Variables declarations
V_FORM_NAME TYPE RS38L_FNAM,
V_LEN_IN LIKE SOOD-OBJLEN,
V_LEN_OUT LIKE SOOD-OBJLEN,
V_LEN_OUTN TYPE I,
V_LINES_TXT TYPE I,
V_LINES_BIN TYPE I.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZTEST'
IMPORTING
FM_NAME = V_FORM_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.
W_CTRLOP-GETOTF = 'X'.
W_CTRLOP-NO_DIALOG = 'X'.
W_COMPOP-TDNOPREV = 'X'.
CALL FUNCTION V_FORM_NAME
EXPORTING
CONTROL_PARAMETERS = W_CTRLOP
OUTPUT_OPTIONS = W_COMPOP
USER_SETTINGS = 'X'
IMPORTING
JOB_OUTPUT_INFO = W_RETURN
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.
I_OTF[] = W_RETURN-OTFDATA[].
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
IMPORTING
BIN_FILESIZE = V_LEN_IN
TABLES
OTF = I_OTF
LINES = I_TLINE
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
OTHERS = 4.
IF SY-SUBRC <> 0.
ENDIF.
LOOP AT I_TLINE.
TRANSLATE I_TLINE USING '~'.
CONCATENATE WA_BUFFER I_TLINE INTO WA_BUFFER.
ENDLOOP.
TRANSLATE WA_BUFFER USING '~'.
DO.
I_RECORD = WA_BUFFER.
APPEND I_RECORD.
SHIFT WA_BUFFER LEFT BY 255 PLACES.
IF WA_BUFFER IS INITIAL.
EXIT.
ENDIF.
ENDDO.
Attachment
REFRESH: I_RECLIST,
I_OBJTXT,
I_OBJBIN,
I_OBJPACK.
CLEAR WA_OBJHEAD.
I_OBJBIN[] = I_RECORD[].
Create Message Body Title and Description
I_OBJTXT = 'test with pdf-Attachment!'.
APPEND I_OBJTXT.
DESCRIBE TABLE I_OBJTXT LINES V_LINES_TXT.
READ TABLE I_OBJTXT INDEX V_LINES_TXT.
WA_DOC_CHNG-OBJ_NAME = 'smartform'.
WA_DOC_CHNG-EXPIRY_DAT = SY-DATUM + 10.
WA_DOC_CHNG-OBJ_DESCR = 'smartform'.
WA_DOC_CHNG-SENSITIVTY = 'F'.
WA_DOC_CHNG-DOC_SIZE = V_LINES_TXT * 255.
Main Text
CLEAR I_OBJPACK-TRANSF_BIN.
I_OBJPACK-HEAD_START = 1.
I_OBJPACK-HEAD_NUM = 0.
I_OBJPACK-BODY_START = 1.
I_OBJPACK-BODY_NUM = V_LINES_TXT.
I_OBJPACK-DOC_TYPE = 'RAW'.
APPEND I_OBJPACK.
Attachment (pdf-Attachment)
I_OBJPACK-TRANSF_BIN = 'X'.
I_OBJPACK-HEAD_START = 1.
I_OBJPACK-HEAD_NUM = 0.
I_OBJPACK-BODY_START = 1.
DESCRIBE TABLE I_OBJBIN LINES V_LINES_BIN.
READ TABLE I_OBJBIN INDEX V_LINES_BIN.
I_OBJPACK-DOC_SIZE = V_LINES_BIN * 255 .
I_OBJPACK-BODY_NUM = V_LINES_BIN.
I_OBJPACK-DOC_TYPE = 'PDF'.
I_OBJPACK-OBJ_NAME = 'smart'.
I_OBJPACK-OBJ_DESCR = 'test'.
APPEND I_OBJPACK.
CLEAR I_RECLIST.
I_RECLIST-RECEIVER = '[email protected]'.
I_RECLIST-REC_TYPE = 'U'.
APPEND I_RECLIST.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = WA_DOC_CHNG
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
TABLES
PACKING_LIST = I_OBJPACK
OBJECT_HEADER = WA_OBJHEAD
CONTENTS_BIN = I_OBJBIN
CONTENTS_TXT = I_OBJTXT
RECEIVERS = I_RECLIST
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8.
IF SY-SUBRC <> 0.
WRITE:/ 'Error When Sending the File', SY-SUBRC.
ELSE.
WRITE:/ 'Mail sent'.
ENDIF.
If you want to send some text as Body of the Mail then follow this once
when u r callin the FM'SO_NEW_DOCUMENT_ATT_SEND_API1'.. points to remember
1.u have to pass the body of content in table CONTENTS_TXT(ia m using I_OBJBIN) (each line a record) then. suppose i have appended 11 records to the table CONTENTS_TXT .
2.PACKING_LIST(iam usign I_OBJPACK) table u ahve to append a redord as follows
I_OBJPACK-TRANSF_BIN = ' '.
I_OBJPACK-HEAD_START = 000000000000001.
I_OBJPACK-HEAD_NUM = 000000000000001.
I_OBJPACK-BODY_START = 000000000000002
I_OBJPACK-BODY_NUM = 000000000000010.
I_OBJPACK-DOC_TYPE = 'RAW'.
append I_OBJPACK-.
by the above code system treat the first line in table I_OBJBIN as header and the 2nd line to 10 lines tread as body.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = WA_DOC_CHNG
PUT_IN_OUTBOX = 'X'
TABLES
PACKING_LIST = I_OBJPACK
OBJECT_HEADER = WA_OBJHEAD
CONTENTS_BIN = I_OBJBIN
CONTENTS_TXT = I_OBJTXT
RECEIVERS = I_RECLIST
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
DOCUMENT_TYPE_NOT_EXIST = 3
OPERATION_NO_AUTHORIZATION = 4
PARAMETER_ERROR = 5
X_ERROR = 6
ENQUEUE_ERROR = 7
OTHERS = 8.
regards,
srinivas
<b>*reward for useful answers*</b> -
Smartform to pdf conversion Doubt
Dear Expert
i'm refering the below code to convert smartform to pdf in module pool program i have created two pushbuttons one for preview and one for edit, if users edit the values it will store in ztable and then they want to preview that changes in form but its not happening its showing old values only i tried to free the container and cleared the data and url values but still same this how to rectify this can some one hlep me out,
FIELD-SYMBOLS <FS_X> TYPE X.
INITIALIZATION.
LS_CONTROL_PARAM-GETOTF = 'X'.
LS_CONTROL_PARAM-NO_DIALOG = 'X'.
START-OF-SELECTION.
CALL FUNCTION '/1BCDWB/SF00000034'
EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = LS_CONTROL_PARAM
P_VBELN = P_VBELN
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
* OUTPUT_OPTIONS =
* USER_SETTINGS = 'X'
IMPORTING
* DOCUMENT_OUTPUT_INFO = L_DOCUMENT_OUTPUT_INFO
JOB_OUTPUT_INFO = L_JOB_OUTPUT_INFO
* JOB_OUTPUT_OPTIONS = L_JOB_ OUTPUT_OPTIONS
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 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
IMPORTING
BIN_FILESIZE = PDF_FSIZE
TABLES
OTF = L_JOB_OUTPUT_INFO-OTFDATA
LINES = LT_PDF
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
OTHERS = 4.
* convert pdf to xstring string
LOOP AT LT_PDF INTO LS_PDF.
ASSIGN LS_PDF TO <FS_X> CASTING.
CONCATENATE LV_CONTENT <FS_X> INTO LV_CONTENT IN BYTE MODE.
ENDLOOP.
CALL SCREEN 100.
*& Module STATUS_0100 OUTPUT
* text
MODULE STATUS_0100 OUTPUT.
* SET PF-STATUS 'xxxxxxxx'.
* SET TITLEBAR 'xxx'.
CREATE OBJECT G_HTML_CONTAINER
EXPORTING
CONTAINER_NAME = 'PDF'.
CREATE OBJECT G_HTML_CONTROL
EXPORTING
PARENT = G_HTML_CONTAINER.
* Convert xstring to binary table to pass to the LOAD_DATA method
CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
EXPORTING
BUFFER = LV_CONTENT
TABLES
BINARY_TAB = LT_DATA.
* Load the HTML
CALL METHOD G_HTML_CONTROL->LOAD_DATA(
EXPORTING
TYPE = 'application'
SUBTYPE = 'pdf'
IMPORTING
ASSIGNED_URL = LV_URL
CHANGING
DATA_TABLE = LT_DATA
EXCEPTIONS
DP_INVALID_PARAMETER = 1
DP_ERROR_GENERAL = 2
CNTL_ERROR = 3
OTHERS = 4 ).
* Show it
CALL METHOD G_HTML_CONTROL->SHOW_URL( URL = LV_URL
IN_PLACE = 'X' ).
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
* text
MODULE USER_COMMAND_0100 INPUT.
ENDMODULE. " USER_COMMAND_0100 INPUT
Regards,
Thirukumaran. R
Edited by: thirukumaran rajendran on Jun 9, 2010 3:19 PMhey,,
U can use 'RSTXPDFT4' -
WinHelp to HTML conversion problem.
I am converting a WinHelp project to HTML Help and have
elected to import my .HPJ file to an HTML project. All seems to go
well with the import. When I open the project from RoboHelp HTML, I
can generate HTML help "successfully" but when I try to open the
CHM file, I get this message: "Cannot open the file:
mk:@MSITStore:D:\... ...\!SSL!\Microsoft_HTML_Help\MyProject.chm"
I have successfully converted several other WinHelp projects
with this approach.
My coworker tried the conversion on a different PC and
experienced the same problem.
Any suggestions?Hello Mike,
Welcome to the Forums.
Check this
thrwead.
I think it may help.
Brian -
I am searching for a clean conversion from pdf to html or xml. I know that there are many solutions, which follow the way of keeping the positions and layouts of several contents. But I am searching for a conversion tool, which converts into clean html without css or into xml. Existing products create a mess of thousand div-tags and span-tags, but you cannot differentiate between a header and a table.
Example (what I need):
<h1>This is a header 1</h1>
<p>This is text</p>
<img src="..... />
<h2> This is header 2 </h2>
<table>.....This is a table ....... </table>
Existing solutions:
<div style="position:.....">Text</div>
<div style="position:.....">Text</div>
<div style="position:.....">Text</div>
<div style="position:.....">Text</div>
Is there any product, which can do that? (batch conversion on servers (e.g. JAVA))Given that CSS is part of HTML - I don't see why that would be an issue.
Since this is Adobe's forum, we offer a Java-focused server side solution called LiveCycle ES. -
SAP Screens to HTML conversion
Hi Friends,
I need to convert SAP Transaction screens into HTML pages.
SAP GUI for HTML gives only BHTML pages but not normal HTML pages.
Even from EP TRansaction iview, teh same SAP GUI for HTML pages will be displayed. Even we can not save them also.
Can anybody suggest any good method to convert SAP screens into normal HTMl pages?
Thanks lot!!
Kind regards,
Ramesh.Hi u can use one of these FM
convrt the itf to html.
CONVERT_ITF_TO_HTML Text Conversion of the Internal SAPscript Format (ITF) to HTML
CONVERT_ITF_TO_HTML_CSS
SAPSCRIPT_WWW_DOCU_TO_HTML
SAPSCRIPT_WWW_ITF_TO_HTML
Thanks & Regards.
D Tarun Kumar -
Database to text/ascii/html conversion
I need to convert an Oracle db to a text file. Preservation of the exact format of the db is not critical, although desireable, but the entire contents of the db in text format (headers aside) is. Is there a filter or migration utility that will easily do this? Conversion to html or xml would be acceptable. Thank you in advance.
This is not the right forum, and the question really doesn't make sense. There's no simple mapping between a relational database and a flat text file.
You can generate XML from an individual table of the database - see the XML developers kit for more details. -
RTF to HTML Conversion to include in JSP
I have an RTF file which I need to display in a JSP page.
I have converted the file successfully using RTFEditorKit and HTMLEditorKit, and now have a string which is a complete HTML file.
Unfortunetly I need to show this String in a JSP - this has a title at the top of the page and an exit button at the bottom. I cannot simply print the String as it contains HTML headers and so the page does not display correctly.
Is there a way to include the HTML string in the jsp successfully?
I don't want to output the HTML to a file and then include the file or use object or iframe to include the file.
Is there an easy way perhaps to strip the header tags from the String?
Or create the HTML string without the header tags at all?
Thankshi,
i'm also trying to do the same thing (convert rtf to html). i was wondering if your conversion handles tables and if so if you could post the code as i'm having trouble finding out info about rtf's.
in terms of stripting out the body tags there are a number of different ways of doing this, here's one way>
myBigHtmlString = your html doc loaded in to a string;
String[] tagsToStripOutArray = {"<html>","</html>","<body>", "</body>", "etc", "etc"};
int pos=0;
for (int x=0; tagsToStripOutArray.length; x++) {
pos = myBigHtmlString.indexOf(tagsToStripOutArray[x]);
if (pos != -1){ // if tag exists in string strip it out
myBigHtmlString = myBigHtmlString.substring(0,pos)+myBigHtmlString.substring(pos+(tagsToStripOutArray[x].length());
}// end for
i haven't compiled this so there maybe errors,
cheers,
ben -
Solution manager Smartform in HTML format.
Hi All,
Here , I ahve a requirement, the smartform <b>CRM_SLFN_ORDER_SERVICE_01</b> is going to the service desk in PDF format as all the Output types in SCOT for Scripts and Smartforms have been configured as PDF. But I have to send it in HTML format.... is there any way other than coping the Class and modifying........
if there is no way other than that PL. let me know how to modify the code to convert the output into HTML format......
thank you,
Girish.Hi,
It is possible to send mail in html.
Copy the Processing Class CL_DOC_PROCESSING_CRM_ORDER into own namespace (for example Z_CL_DOC_PROCESSING_CRM_ORDER)
Create a new Processing Method (or copy the SAP Standard CRM_SRVORDER_EXEC_SMART_FROM) and insert (or replace) the following code:
Z_CRM_SRVORDER_EXEC_SMARTFORM
METHOD Z_CRM_SRVORDER_EXEC_SMART_FORM.
INCLUDE: crm_direct.
TYPES:
SWC_OBJECT TYPE OBJ_RECORD.
DATA:
LS_CONTROL_PARAMETERS TYPE SSFCTRLOP.
function name
DATA: function_name TYPE rs38l_fnam,
DUMMY(254) TYPE C,
ls_archive_index TYPE toa_dara,
ls_orderadm_h TYPE crmt_output_orderadm_h_com,
ls_activity_h TYPE crmt_output_activity_h_com,
ls_opport_h TYPE crmt_output_opport_h_com,
ls_orgman_h TYPE crmt_output_orgman_h_com,
lt_partner_h TYPE crmt_output_partner_h_comt,
ls_pricingdata_h TYPE crmt_output_pricingdata_h_com,
ls_sales_h TYPE crmt_output_sales_h_com,
ls_shipping_h TYPE crmt_output_shipping_h_com,
lt_payplan_d_h TYPE crmt_output_payplan_d_h_comt,
ls_customer_h TYPE crmt_output_customer_h_com,
ls_cumulat_h TYPE crmt_output_cumulat_h_com,
lt_billing_h TYPE crmt_output_billing_h_comt,
lt_cancel_h TYPE crmt_output_cancel_h_comt,
lt_appointment_h TYPE crmt_output_appointment_h_comt,
lt_billplan_d_h TYPE crmt_output_billplan_d_h_comt,
lt_billplan_h TYPE crmt_output_billplan_h_comt,
lt_status_d_h TYPE crmt_output_status_d_h_comt,
lt_status_h TYPE crmt_output_status_h_comt,
lt_srv_subject_h TYPE crmt_output_srv_subject_h_comt,
lt_srv_reason_h TYPE crmt_output_srv_reason_h_comt,
lt_srv_result_h TYPE crmt_output_srv_result_h_comt,
ls_acs_h TYPE crmt_acs_h_com,
lt_srv_subject_i TYPE crmt_output_srv_subject_h_comt,
lt_srv_refobj_h TYPE crmt_output_srv_refobj_h_comt,
lt_srv_refobj_i TYPE crmt_output_srv_refobj_h_comt,
lt_orderadm_i TYPE crmt_output_orderadm_i_comt,
lt_orgman_i TYPE crmt_output_orgman_i_comt,
lt_pricingdata_i TYPE crmt_output_pricingdata_i_comt,
lt_pricing_i TYPE crmt_output_pricing_i_comt,
lt_product_i TYPE crmt_output_product_i_comt,
lt_sales_i TYPE crmt_output_sales_i_comt,
lt_service_i TYPE crmt_output_service_i_comt,
lt_shipping_i TYPE crmt_output_shipping_i_comt,
lt_schedlin_i TYPE crmt_output_schedlin_i_comt,
lt_customer_i TYPE crmt_output_customer_i_comt,
lt_partner_i TYPE crmt_output_partner_i_comt,
lt_item_cstics_i TYPE crmt_item_cstics_tab,
lt_billing_i TYPE crmt_output_billing_i_comt,
lt_cancel_i TYPE crmt_output_cancel_i_comt,
lt_finprod_i TYPE crmt_output_finprod_i_comt,
lt_ordprp_i TYPE crmt_output_ordprp_i_comt,
lt_appointment_i TYPE crmt_output_appointment_i_comt,
lt_billplan_d_i TYPE crmt_output_billplan_d_i_comt,
lt_billplan_i TYPE crmt_output_billplan_i_comt,
lt_orderadm_i_qt TYPE crmt_output_orderadm_i_qt_comt,
lt_orderadm_i_in TYPE crmt_output_orderadm_i_in_comt,
lt_schedlin_i_cf TYPE crmt_output_schedlin_i_cf_comt,
lt_status_i TYPE crmt_output_status_i_comt,
lt_working_set_e_s_bbp TYPE /1cn/working_set_e_s_bbp_t,
lv_language LIKE sy-langu,
lo_order TYPE REF TO cl_doc_crm_order,
lv_object_guid TYPE crmt_object_guid,
lv_status TYPE jstat,
lt_status TYPE TABLE OF jstat,
lv_error_tab_wrk TYPE ssferror,
ls_output_options TYPE ssfcompop,
lt_service_i_assi TYPE crmt_output_service_i_***_comt.
fill internal structure for the output options
ls_output_options = is_output_options.
get the function name for this smart form
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = ip_smart_form
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
fm_name = function_name
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3
IF sy-subrc <> 0.
add an error message to processing protocol
MESSAGE i015(sppf_media) WITH ip_smart_form INTO dummy.
CALL METHOD cl_log_ppf=>add_message
EXPORTING
ip_problemclass = '1'
ip_handle = ip_application_log.
EXIT.
ENDIF.
determine the tables of the application
CALL FUNCTION 'CRM_OUTPUT_SINGLE_READ'
EXPORTING
iv_object = io_appl_object
iv_smart_form = ip_smart_form
ir_partner = io_partner
IMPORTING
es_output_orderadm_h = ls_orderadm_h
es_output_activity_h = ls_activity_h
es_output_opport_h = ls_opport_h
es_output_orgman_h = ls_orgman_h
es_output_pricingdata_h = ls_pricingdata_h
es_output_sales_h = ls_sales_h
es_output_shipping_h = ls_shipping_h
et_output_partner_h = lt_partner_h
et_output_payplan_d_h = lt_payplan_d_h
es_output_customer_h = ls_customer_h
es_output_cumulat_h = ls_cumulat_h
et_output_billing_h = lt_billing_h
et_output_cancel_h = lt_cancel_h
et_output_appointment_h = lt_appointment_h
et_output_billplan_d_h = lt_billplan_d_h
et_output_billplan_h = lt_billplan_h
et_output_status_d_h = lt_status_d_h
et_output_status_h = lt_status_h
et_output_srv_subject_h = lt_srv_subject_h
et_output_srv_reason_h = lt_srv_reason_h
et_output_srv_result_h = lt_srv_result_h
et_output_srv_refobj_h = lt_srv_refobj_h
et_output_srv_refobj_i = lt_srv_refobj_i
et_output_srv_subject_i = lt_srv_subject_i
es_output_acs_h = ls_acs_h
et_output_orderadm_i = lt_orderadm_i
et_output_orgman_i = lt_orgman_i
et_output_pricingdata_i = lt_pricingdata_i
et_output_pricing_i = lt_pricing_i
et_output_product_i = lt_product_i
et_output_sales_i = lt_sales_i
et_output_service_i = lt_service_i
et_output_shipping_i = lt_shipping_i
et_output_schedlin_i = lt_schedlin_i
et_output_partner_i = lt_partner_i
et_item_cstics_i = lt_item_cstics_i
et_output_customer_i = lt_customer_i
et_output_billing_i = lt_billing_i
et_output_cancel_i = lt_cancel_i
et_output_finprod_i = lt_finprod_i
et_output_ordprp_i = lt_ordprp_i
et_output_appointment_i = lt_appointment_i
et_output_billplan_d_i = lt_billplan_d_i
et_output_billplan_i = lt_billplan_i
et_output_orderadm_i_qt = lt_orderadm_i_qt
et_output_orderadm_i_in = lt_orderadm_i_in
et_output_schedlin_i_cf = lt_schedlin_i_cf
et_output_status_i = lt_status_i
et_output_wrk_set_e_s_bbp = lt_working_set_e_s_bbp
ev_language = lv_language
et_output_service_i_assi = lt_service_i_assi.
set mail title
SELECT SINGLE caption INTO ls_output_options-tdtitle
FROM stxfadmt WHERE
formname = ip_smart_form AND
langu = lv_language.
IF ls_output_options-tdtitle IS INITIAL.
SELECT SINGLE caption INTO ls_output_options-tdtitle
FROM stxfadmt WHERE
formname = ip_smart_form.
ENDIF.
REPLACE '&' WITH ls_orderadm_h-object_id
INTO ls_output_options-tdtitle.
*--language of smart form--
determin here the language of the smart form
ls_control_parameters = is_control_parameters.
ls_control_parameters-langu = lv_language.
CONSTANTS: C_GR_DIR TYPE TDTEXT VALUE 'MYGRAPHICS/'. "#EC NOTEXT
DATA:
LS_XSFPARAM_LINE TYPE SSFXSFP,
LS_HTML TYPE TRFRESULT,
LT_GRAPHICS TYPE TSF_XSF_GR.
*SET SMARTFORM OUTPUT OPTIONS
LS_OUTPUT_OPTIONS-XSFCMODE = 'X'.
LS_OUTPUT_OPTIONS-XSF = 'X'.
LS_OUTPUT_OPTIONS-XSFOUTMODE = 'A'.
LS_OUTPUT_OPTIONS-XSFFORMAT = 'X'.
LS_OUTPUT_OPTIONS-TDARMOD = '' .
CLEAR LS_OUTPUT_OPTIONS-XSFOUTDEV.
LS_XSFPARAM_LINE-NAME = 'GRAPHICS'. "#EC NOTEXT
LS_XSFPARAM_LINE-VALUE = 'EXTRACT'. "#EC NOTEXT
APPEND LS_XSFPARAM_LINE TO LS_OUTPUT_OPTIONS-XSFPARS.
LS_XSFPARAM_LINE-NAME = 'GRAPHICS-DIRECTORY'. "#EC NOTEXT
LS_XSFPARAM_LINE-VALUE = C_GR_DIR.
APPEND LS_XSFPARAM_LINE TO LS_OUTPUT_OPTIONS-XSFPARS.
LS_XSFPARAM_LINE-NAME = 'CONTENT-ID'. "#EC NOTEXT
LS_XSFPARAM_LINE-VALUE = 'ENABLE'. "#EC NOTEXT
APPEND LS_XSFPARAM_LINE TO LS_OUTPUT_OPTIONS-XSFPARS.
SILENT MODE ON
LS_OUTPUT_OPTIONS-TDIMMED = SPACE.
LS_OUTPUT_OPTIONS-TDNEWID = SPACE.
LS_CONTROL_PARAMETERS-NO_DIALOG = 'X'. "#EC NOTEXT
LS_CONTROL_PARAMETERS-DEVICE = ''. "EC NOTEXT
call function to process smart form (old forms)
CALL FUNCTION function_name
EXPORTING
archive_index = is_archive_index
archive_index_tab = ct_archive_index_tab
archive_parameters = is_archive_parameters
control_parameters = ls_control_parameters
mail_appl_obj = is_mail_appl_obj
mail_recipient = is_mail_recipient
mail_sender = is_mail_sender
output_options = ls_output_options
user_settings = ip_user_settings
orderadm_h = ls_orderadm_h
activity_h = ls_activity_h
opport_h = ls_opport_h
orgman_h = ls_orgman_h
partner_h = lt_partner_h
pricingdata_h = ls_pricingdata_h
sales_h = ls_sales_h
shipping_h = ls_shipping_h
payplan_d_h = lt_payplan_d_h
cumulat_h = ls_cumulat_h
customer_h = ls_customer_h
acs_h = ls_acs_h
billing_h = lt_billing_h
cancel_h = lt_cancel_h
appointment_h = lt_appointment_h
billplan_d_h = lt_billplan_d_h
billplan_h = lt_billplan_h
status_d_h = lt_status_d_h
status_h = lt_status_h
srv_subject_h = lt_srv_subject_h
srv_reason_h = lt_srv_reason_h
srv_result_h = lt_srv_result_h
srv_subject_i = lt_srv_subject_i
srv_refobj_h = lt_srv_refobj_h
srv_refobj_i = lt_srv_refobj_i
orderadm_i = lt_orderadm_i
orderadm_i_qt = lt_orderadm_i_qt
orgman_i = lt_orgman_i
pricingdata_i = lt_pricingdata_i
pricing_i = lt_pricing_i
product_i = lt_product_i
sales_i = lt_sales_i
service_i = lt_service_i
schedlin_i = lt_schedlin_i
schedlin_i_cf = lt_schedlin_i_cf
shipping_i = lt_shipping_i
partner_i = lt_partner_i
item_cstics_i = lt_item_cstics_i
customer_i = lt_customer_i
billing_i = lt_billing_i
cancel_i = lt_cancel_i
finprod_i = lt_finprod_i
ordprp_i = lt_ordprp_i
appointment_i = lt_appointment_i
billplan_d_i = lt_billplan_d_i
billplan_i = lt_billplan_i
status_i = lt_status_i
working_set_e_s_bbp = lt_working_set_e_s_bbp
language = lv_language
service_i_assi = lt_service_i_assi
IMPORTING
document_output_info = es_document_output_info
job_output_info = es_job_output_info
job_output_options = es_job_output_options
EXCEPTIONS
output_canceled = 1
parameter_error = 2
OTHERS = 3.
IF sy-subrc = 0.
DATA:
LT_RETURN TYPE BAPIRET2_TAB,
LT_RECEIVERS TYPE TABLE OF SOMLRECI1,
LV_MAIL_SUBJECT TYPE SO_OBJ_DES,
LV_SEND_PARTNER TYPE BU_PARTNER.
retrieve the sender and recipient from business objects
provided by postprocessing framework
DATA:
LS_SENDER TYPE SWC_OBJECT,
LS_RECIPIENT TYPE SWC_OBJECT,
WA_RECEIVER TYPE SOMLRECI1.
SWC_CREATE_OBJECT LS_SENDER 'RECIPIENT' SPACE.
SWC_OBJECT_FROM_PERSISTENT IS_MAIL_SENDER LS_SENDER.
SWC_GET_PROPERTY LS_SENDER 'AddressString' LV_SEND_PARTNER.
SWC_CREATE_OBJECT LS_RECIPIENT 'RECIPIENT' SPACE.
SWC_OBJECT_FROM_PERSISTENT IS_MAIL_RECIPIENT LS_RECIPIENT.
SWC_GET_PROPERTY LS_RECIPIENT 'AddressString' WA_RECEIVER-RECEIVER.
SWC_GET_PROPERTY LS_RECIPIENT 'TypeId' WA_RECEIVER-REC_TYPE.
WA_RECEIVER-COM_TYPE = 'INT'. "#EC NOTEXT
APPEND WA_RECEIVER TO LT_RECEIVERS.
Set Email Subject
SELECT SINGLE caption INTO LV_MAIL_SUBJECT
FROM stxfadmt WHERE
formname = ip_smart_form AND
langu = lv_language.
IF ls_output_options-tdtitle IS INITIAL.
SELECT SINGLE caption INTO LV_MAIL_SUBJECT
FROM stxfadmt WHERE
formname = ip_smart_form.
ENDIF.
REPLACE '&' WITH ls_orderadm_h-object_id
INTO LV_MAIL_SUBJECT.
===========
LS_HTML = ES_JOB_OUTPUT_INFO-XMLOUTPUT-TRFRESULT.
LT_GRAPHICS[] = ES_JOB_OUTPUT_INFO-XMLOUTPUT-XSFGR[].
DATA: L_GRAPHIC TYPE SSF_XSF_GR,
HTML_DATA TYPE TRFRESULT,
GRAPHICS TYPE TSF_XSF_GR,
LV_SENT_TO_ALL TYPE BOOLEAN,
LV_SEND_ADDRESS TYPE ADR6-SMTP_ADDR,
LI_SENDER TYPE REF TO IF_SENDER_BCS,
RECEIVER TYPE SOMLRECI1,
LO_BCS TYPE REF TO CL_BCS,
LO_DOC_BCS TYPE REF TO CL_DOCUMENT_BCS,
LO_MIME_HELPER TYPE REF TO CL_GBT_MULTIRELATED_SERVICE,
LO_RECIPIENT TYPE REF TO IF_RECIPIENT_BCS,
L_FILENAME TYPE STRING,
LT_SOLI TYPE SOLI_TAB,
LT_SOLIX TYPE SOLIX_TAB,
LS_SOLI TYPE SOLI,
LS_SOLIX TYPE SOLIX,
L_HTML_RAW LIKE LINE OF HTML_DATA-CONTENT,
HTML_XSTR TYPE XSTRING,
HTML_STR TYPE STRING,
HTML_LEN TYPE I,
L_OFFSET TYPE I,
L_LENGTH TYPE I,
L_DIFF TYPE I,
L_CONTENT_ID TYPE STRING,
L_CONTENT_TYPE TYPE W3CONTTYPE,
L_OBJ_LEN TYPE SO_OBJ_LEN,
GR_XSTR TYPE XSTRING,
L_GR_RAW TYPE BAPICONTEN,
L_USERNAME TYPE UNAME,
L_MAIL_ADDRESS TYPE AD_SMTPADR,
WA_RETURN TYPE BAPIRET2,
LV_SEND_REQ_BCS TYPE REF TO CX_SEND_REQ_BCS,
LV_ADDRESS_BCS TYPE REF TO CX_ADDRESS_BCS,
LV_GBT_MIME TYPE REF TO CX_GBT_MIME,
LV_BCOM_MIME TYPE REF TO CX_BCOM_MIME,
LV_DOCUMENT_BCS TYPE REF TO CX_DOCUMENT_BCS.
CLEAR HTML_XSTR.
LOOP AT LS_HTML-CONTENT INTO L_HTML_RAW.
CONCATENATE HTML_XSTR L_HTML_RAW INTO HTML_XSTR IN BYTE MODE.
ENDLOOP.
HTML_XSTR = HTML_XSTR(LS_HTML-LENGTH).
CALL FUNCTION 'SCP_TRANSLATE_CHARS' "#EC NOTEXT
EXPORTING INBUFF = HTML_XSTR
INCODE = '4110' " UTF-8 "#EC NOTEXT
OUTCODE = '0000' " ACTUAL CODEPAGE
CSUBST = 'X' "#EC NOTEXT
SUBSTC_SPACE = 'X' "#EC NOTEXT
IMPORTING OUTBUFF = HTML_STR
OUTUSED = HTML_LEN
EXCEPTIONS OTHERS = 1.
CHANGE ENCODING UTF-8 TO LATIN1
REPLACE ALL OCCURRENCES OF 'UTF-8' IN HTML_STR WITH 'iso-8859-1'
IGNORING CASE. "#EC NOTEXT
*HACK THE HTML CODE GENERATED BY SMARTFORM TO MAKE THE
*EXTERNAL IMAGES APPEAR AS <IMG> TAG IN HTML
REPLACE ALL OCCURRENCES OF '<IMG' IN HTML_STR WITH '<IMG' IGNORING
CASE. "#EC NOTEXT
REPLACE ALL OCCURRENCES OF '/>' IN HTML_STR WITH '/>' IGNORING
CASE. "#EC NOTEXT
REPLACE ALL OCCURRENCES OF '</A>' IN HTML_STR WITH '</A>'
IGNORING CASE. "#EC NOTEXT
REPLACE ALL OCCURRENCES OF '<' IN HTML_STR WITH '<'
IGNORING CASE. "#EC NOTEXT
REPLACE ALL OCCURRENCES OF '>' IN HTML_STR WITH '>'
IGNORING CASE. "#EC NOTEXT
HTML_LEN = STRLEN( HTML_STR ).
L_OFFSET = 0.
L_LENGTH = 255.
WHILE L_OFFSET < HTML_LEN.
L_DIFF = HTML_LEN - L_OFFSET.
IF L_DIFF > L_LENGTH.
LS_SOLI-LINE = HTML_STR+L_OFFSET(L_LENGTH).
ELSE.
LS_SOLI-LINE = HTML_STR+L_OFFSET(L_DIFF).
ENDIF.
APPEND LS_SOLI TO LT_SOLI.
ADD L_LENGTH TO L_OFFSET.
ENDWHILE.
CREATE OBJECT LO_MIME_HELPER.
CALL METHOD LO_MIME_HELPER->SET_MAIN_HTML
EXPORTING
CONTENT = LT_SOLI
FILENAME = 'SAPWEBFORM.HTM' "#EC NOTEXT
DESCRIPTION =
'SAP WEB FORM'. "#EC NOTEXT
*prepare the graphic content from the smartform
LOOP AT LT_GRAPHICS INTO L_GRAPHIC.
CLEAR GR_XSTR.
LOOP AT L_GRAPHIC-CONTENT INTO L_GR_RAW.
CONCATENATE GR_XSTR L_GR_RAW-LINE INTO GR_XSTR IN BYTE MODE.
ENDLOOP.
GR_XSTR = GR_XSTR(L_GRAPHIC-LENGTH).
L_OFFSET = 0.
L_LENGTH = 255.
CLEAR LT_SOLIX[].
WHILE L_OFFSET < L_GRAPHIC-LENGTH.
L_DIFF = L_GRAPHIC-LENGTH - L_OFFSET.
IF L_DIFF > L_LENGTH.
LS_SOLIX-LINE = GR_XSTR+L_OFFSET(L_LENGTH).
ELSE.
LS_SOLIX-LINE = GR_XSTR+L_OFFSET(L_DIFF).
ENDIF.
APPEND LS_SOLIX TO LT_SOLIX.
ADD L_LENGTH TO L_OFFSET.
ENDWHILE.
CONCATENATE C_GR_DIR L_GRAPHIC-GRAPHICS
'.BMP' INTO L_FILENAME. "#EC NOTEXT
CONCATENATE C_GR_DIR L_GRAPHIC-GRAPHICS
'.BMP' INTO L_CONTENT_ID. "#EC NOTEXT
L_CONTENT_TYPE = L_GRAPHIC-HTTPTYPE.
L_OBJ_LEN = L_GRAPHIC-LENGTH.
CALL METHOD LO_MIME_HELPER->ADD_BINARY_PART
EXPORTING
CONTENT = LT_SOLIX
FILENAME = L_FILENAME
EXTENSION = 'BMP' "#EC NOTEXT
DESCRIPTION = 'GRAPHIC IN BMP FORMAT' "#EC NOTEXT
CONTENT_TYPE = L_CONTENT_TYPE
LENGTH = L_OBJ_LEN
CONTENT_ID = L_CONTENT_ID.
ENDLOOP.
TRY.
LO_DOC_BCS = CL_DOCUMENT_BCS=>CREATE_FROM_MULTIRELATED(
I_SUBJECT = LV_MAIL_SUBJECT
I_MULTIREL_SERVICE = LO_MIME_HELPER ).
CATCH CX_DOCUMENT_BCS INTO LV_DOCUMENT_BCS.
ERROR HANDLING
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'E'. "#EC NOTEXT
MOVE LV_DOCUMENT_BCS->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
EXIT.
CATCH CX_BCOM_MIME INTO LV_BCOM_MIME.
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'E'. "#EC NOTEXT
MOVE LV_BCOM_MIME->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
EXIT.
CATCH CX_GBT_MIME INTO LV_GBT_MIME.
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'E'. "#EC NOTEXT
MOVE LV_GBT_MIME->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
EXIT.
ENDTRY.
REUSE THE CONTENT PREPARED FOR ALL RECEIVERS
LOOP AT LT_RECEIVERS INTO RECEIVER.
L_MAIL_ADDRESS = RECEIVER-RECEIVER.
CREATE SEND_REQUEST
TRY.
LO_BCS = CL_BCS=>CREATE_PERSISTENT( ).
LO_BCS->SET_DOCUMENT( I_DOCUMENT = LO_DOC_BCS ).
CATCH CX_SEND_REQ_BCS INTO LV_SEND_REQ_BCS.
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'E'. "#EC NOTEXT
MOVE LV_SEND_REQ_BCS->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
EXIT.
ENDTRY.
CREATE SENDER
CLASS CL_CAM_ADDRESS_BCS DEFINITION LOAD.
TRY.
IF L_USERNAME NS '@'. "#EC NOTEXT
L_USERNAME = LV_SEND_PARTNER .
TRANSLATE L_USERNAME TO UPPER CASE. "#EC TRANSLANG
LI_SENDER ?= CL_SAPUSER_BCS=>CREATE( L_USERNAME ).
ELSE.
DATA: L_FROM_MAIL_ADDRESS TYPE AD_SMTPADR.
L_FROM_MAIL_ADDRESS = L_USERNAME.
LI_SENDER ?=
CL_CAM_ADDRESS_BCS=>CREATE_INTERNET_ADDRESS(
I_ADDRESS_STRING = L_FROM_MAIL_ADDRESS ).
ENDIF.
CALL METHOD LO_BCS->SET_SENDER
EXPORTING
I_SENDER = LI_SENDER.
CATCH CX_ADDRESS_BCS INTO LV_ADDRESS_BCS.
ERROR HANDLING
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'E'. "#EC NOTEXT
MOVE LV_ADDRESS_BCS->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
EXIT.
CATCH CX_SEND_REQ_BCS INTO LV_SEND_REQ_BCS.
FAILED TO ADD A RECIPIENT
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'E'. "#EC NOTEXT
MOVE LV_SEND_REQ_BCS->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
EXIT.
ENDTRY.
CREATE RECIPIENT
TRY.
LO_RECIPIENT = CL_CAM_ADDRESS_BCS=>CREATE_INTERNET_ADDRESS(
I_ADDRESS_STRING = L_MAIL_ADDRESS ).
CATCH CX_ADDRESS_BCS INTO LV_ADDRESS_BCS.
ERROR HANDLING
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'W'. "#EC NOTEXT
MOVE LV_ADDRESS_BCS->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
CONTINUE.
ENDTRY.
TRY.
LO_BCS->ADD_RECIPIENT( I_RECIPIENT = LO_RECIPIENT ).
CATCH CX_SEND_REQ_BCS INTO LV_SEND_REQ_BCS.
FAILED TO ADD A RECIPIENT
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'W'. "#EC NOTEXT
MOVE LV_SEND_REQ_BCS->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
CONTINUE.
ENDTRY.
SEND
TRY.
RECEIPTS ONLY FOR ERRORS
CALL METHOD LO_BCS->SEND_REQUEST->SET_REQUESTED_STATUS
EXPORTING
I_REQUESTED_STATUS =
'N'. "#EC NOTEXT
LV_SENT_TO_ALL = LO_BCS->SEND( ).
CATCH CX_SEND_REQ_BCS INTO LV_SEND_REQ_BCS.
CLEAR WA_RETURN.
WA_RETURN-TYPE = 'E'. "#EC NOTEXT
MOVE LV_SEND_REQ_BCS->GET_LONGTEXT( ) TO WA_RETURN-MESSAGE.
INSERT WA_RETURN INTO TABLE LT_RETURN.
ERROR HANDLING
EXIT.
ENDTRY.
ENDLOOP. " END LOOP AT LT_RECEIVERS
COMMIT WORK.
ES_JOB_OUTPUT_INFO-OUTPUTDONE = 'X'.
SET THE SUCCESS INFORMATION
WA_RETURN-TYPE = 'I'. "#EC NOTEXT
WA_RETURN-MESSAGE = 'MAIL SENT SUCCESSFULLY'. "#EC NOTEXT
INSERT WA_RETURN INTO TABLE LT_RETURN.
SET STATUS PRINTED INTO THE CRM ORDER
CALL FUNCTION 'CRM_STATUS_SET_INTERN'
EXPORTING
IV_OBJNR = LV_OBJECT_GUID
IV_STATUS = GC_STATUS-PRINTED
XNOAUTO = TRUE
EXCEPTIONS
OBJECT_NOT_FOUND = 1
STATUS_INCONSISTENT = 2
STATUS_NOT_ALLOWED = 3
OTHERS = 4.
ELSE.
CASE SY-SUBRC.
WHEN 1.
MESSAGE E016(SPPF_MEDIA) INTO DUMMY.
WHEN 2.
MESSAGE E017(SPPF_MEDIA) WITH FUNCTION_NAME INTO DUMMY.
WHEN 3.
MESSAGE E018(SPPF_MEDIA) WITH FUNCTION_NAME INTO DUMMY.
ENDCASE.
CALL METHOD CL_LOG_PPF=>ADD_MESSAGE
EXPORTING
IP_PROBLEMCLASS = '1'
IP_HANDLE = IP_APPLICATION_LOG.
ENDIF.
GET ERROR TABLE
CALL FUNCTION 'SSF_READ_ERRORS'
IMPORTING
ERRORTAB = ET_ERROR_TAB.
FILL ERROR INTO CRM_ORDER STATUS
LOOP AT ET_ERROR_TAB INTO LV_ERROR_TAB_WRK
WHERE MSGTY = GC_MSGTYPE-ERROR.
CALL FUNCTION 'CRM_MESSAGE_COLLECT'
EXPORTING
IV_CALLER_NAME = GC_OBJECT_NAME-ORDER
IV_MSGNO = LV_ERROR_TAB_WRK-MSGNO
IV_MSGID = LV_ERROR_TAB_WRK-MSGID
IV_MSGTY = LV_ERROR_TAB_WRK-MSGTY
IV_MSGV1 = LV_ERROR_TAB_WRK-MSGV1
IV_MSGV2 = LV_ERROR_TAB_WRK-MSGV2
IV_MSGV3 = LV_ERROR_TAB_WRK-MSGV3
IV_MSGV4 = LV_ERROR_TAB_WRK-MSGV4
IV_MSGTYPE = GC_MSGTYPE-WARNING
IV_MSGLEVEL = GC_MSGLEVEL-ADMINISTRATOR
EXCEPTIONS
NOT_FOUND = 1
APPL_LOG_ERROR = 2
OTHERS = 3.
ENDLOOP.
ENDMETHOD.
Now put the class and method into the action definition.
Kind regards,
Remy Piets
Maybe you are looking for
-
Why can't I log into my iMessage or Face Time accounts using my current Apple ID?
I just upgraded to OS 7 and now I can't get iMessage or Face Time to accept my Apple ID and log into them. What am I missing?
-
Hello, What are the best practices for disaggregation in APO? Is there any good documentation for when to use each type of disaggregation? If so, please forward to me. Can anyone explain exactly how the "generate proportional factors" program in A
-
Adding SortField at runtime?
I'd like to add a sortfield at runtime to a report without predefined sortfields. Unfortunatly the SortFields-Collection of the ReportDocument OM doesn't provide an .Add method or anything similar. How can I solve that problem? Thx Ontario
-
Displaying text whenever there is no value present in Database
Post Author: Sujitha CA Forum: WebIntelligence Reporting Hi My business demands that a text 'Defaulted to Zero' be displayed if for a given combination of columns there is no data present in the Fact table.We use oracle 9i. I have already used the nu
-
Newbie wants to install Oracle on Linux
Hello there As a novice, I'm keen to get cracking on installing Oracle on Linux. As yet I have not purchased a copy of Linux. I intend running my setup on an IBM 560E Thinkpad with 80 Meg of RAM. I'm interested to hear opinions on which versions of L