How to send object by NetStream?
Hi, I have question about using Cirrus in real time game developed. I want to create a game in which each player will be able to move a character using the arrow keys. And here comes my question.How do I continuously transfer an object or variable via NetStream. Should I use the send() method (when a player is in motion), or maybe it's possible to send and receive an object using publish() and play().
I spent a lot of time looking for solutions on the internet, but with no succes. Everything that I've found was about transmission of audio and video (attachAudio() and attachVideo()), I need a method such as attachObject(), which could continuously send for example player's position.
I found P2PGameLibrary on Tom Krcha's site (www.flashrealtime.com). Unfortunately, it is in the .swc file and when I use FlashDevelop to open it, it shows only the model of classes and methods. If I could see the entire code, I could study it and maybe it would solve my problem.
If someone could give an example of how to send objects/variables by NetStream, I would be grateful.
swO_orn
Thanks for fast answer.
Yes I have build a simple chat p2p using only NetGroup, and sending messages by method post(). The one "bad thing" I nothiced is delay. I got about 500ms. That's too much for real time games.
I have watch some tutorials on Tom Krcha's blog and they said I should build full mesh of direct connections of all users to make P2P game.
Let's say I want to have 6 players sending and receiving info in game. What's the best way to transfer data between them? NetGroup.post() or NetStream.send() or maybe another?
PS: Please give me an example how to receive data in NetStream if data was transfered by send() method.
Doc says :
send(handlerName:String, ... arguments):void
How do I start handler on receiver app?
Similar Messages
-
How to send object arraylist from servlet to jsp and display using jstl
Hi All....
I have a simple application and problem with it.
Once user logged in to system the user will redirect to LoginServlet.java controller.
Then in LoginServlet I want to redirect user to another page called book_details.jsp.
this is my login servlet.
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
PrintWriter out = response.getWriter();
ArrayList<BankAccountDTO> account_list = new ArrayList();
ResultSet resultSet = null;
LowFairAirDB airDB = null;
try{
airDB = new LowFairAirDB();
String query = "SELECT account_id, type, description, balance, credit_line, begin_balance, begin_balance_time_stamp FROM bank_account";
airDB.sqlSelect(query);
resultSet = airDB.getResultSet();
while(resultSet.next()){
account_list.add(new BankAccountDTO(resultSet.getInt(1),
resultSet.getInt(4),
resultSet.getInt(5),
resultSet.getInt(6),
resultSet.getString(2),
resultSet.getString(3),
resultSet.getString(7)));
}catch(Exception ex){
}finally{
try{resultSet.close();}catch(Exception ex){}
airDB.sqlClose();
}I set bank account values to BankAccountDTO.java objects and add them to the arrayList.
Next I want to send this objects arrayList to books_details.jsp and wanna display each objects values using JSTL.
I still finding a way to go through this.
1. Can anyone say how can I do it?
2. Is there any other method to do the same thing without using JSTL?
thanks in advance,
Dil.Naishe wrote:
In your servlet,
request.setAttribute("account_list", account_list);
requestDispatcher.findForward("/your/display/jsp");
Good. I would only follow the Java naming conventions. E.g. accountList or accounts instead of the ugly PHP/C conventions.
In the JSP,
lst = (List< BankAccountDTO >)request.setAttribute("account_list");
for(BankAccountDTO b: lst){
populate your HTML tags or whatever
Wrong. 1) You need getAttribute() and 2) you should not use scriptlets. Use JSTL c:forEach, e.g.<table>
<c:forEach items="${accounts}" var="account">
<tr>
<td>${account.id}</td>
<td>${account.type}</td>
<td>${account.description}</td>
</tr>
</c:forEach>
</table>To the topicstarter: for future JSP/JSTL related questions please use JSP/JSTL forum.
Here it is: [http://forums.sun.com/forum.jspa?forumID=45]. -
Hi
I am unable to send bean object to server through httpconnection.
I tried to set in header and send ,but its not going.
So I request you to send me simple sample code.
thank and regards
hariprasad.Plese any one help plse......
-
How to send data to bam data object through java code
how to send data to bam data object through java code
I've made a suggestion in other thread: https://forums.oracle.com/thread/2560276
You can invoke BAM Webservices (Using Oracle BAM Web Services) or use JMS integration using Enterprise Message Sources (http://docs.oracle.com/cd/E17904_01/integration.1111/e10224/bam_ent_msg_sources.htm)
Regards
Luis Fernando Heckler -
How to send nested object collection to PL/SQL Procedure as an Input param
How to send nested object collection to PL/SQL Procedure as an Input parameter.
The scenario is there is a parent mapping object containing a collection(java.sql.Array) of child objects.
I need to send the parent object collection to PL/SQL procedure as a input parameter.
public class parent{
String attr1;
String attr2;
Child[] attr3;
public class Child{
String attr1;
SubChild[] attr2;
public class SubChild{
String attr1;
Urgent!!!
Edited by: javiost on Apr 30, 2008 2:09 AMjaviost wrote:
How to send nested object collection to PL/SQL Procedure as an Input parameter.There are a few ways to do this, all of which likely depend on the particular database you're using.
Urgent!!!Not to me... -
How to redefine GOS toolbar function "SEND OBJECT WITH NOTE" for deliveries
Hello Abapers,
for inbound and outbound deliveries (tcodes VL01N, VL02N, VL03N, VL31N, VL32N, VL33N) I have to replace the GOS toolbar function SEND OBJECT WITH NOTE with a redefined function matching the following specifications:
- Title field needs a different content
- Text (note content) should be filled by default, maybe with standard text, but can be overwritten
- All attachments in the attachment list of the object should be included by default or be selectable thru an additional button
Also possible could be an addiitonal toolbar function SEND ATTACHMENTS WITH NOTE as a copy of SEND OBJECT WITH NOTE.
Although I checked the SDN forums for a matching solution, I couldn't find one in tons of GOS threads.
Perhaps someone had solved a similar problem to send obejct with notes from GOS toolbar with several of the object's attachments.
Maybe some GOS classes have to be redefined for that, but this should only be available for deliveries, not for the other BOR types.
I'm waiting for your ideas.
Best regards,
Klaus
Edited by: Klaus Babl on Feb 16, 2012 10:13 AMNo the list of steps done to solve the issue:
1. Copy of class CL_GOS_SRV_SEND_OBJECT to new class /SIE/IS_BSD_GOS_SRV_SEND_ATT.
2. SM30 for table SGOSATTR: New entry for new service ZSO_SENDATT for the new class.
3. Copy of methods ON_SERVICE_SUCCEEDED, CHECK_STATUS, CREATE_ROOT_ITEM and ON_LINK_CREATED from class CL_GOS_SRV_ATTACHMENT_LIST to the new class.
4. New code added to the top of method CHECK_STATUS to show the service for deliveries only:
IF is_lporb-typeid NE 'BUS2015'
AND is_lporb-typeid NE 'LIKP'.
ep_status = mp_status_invisible.
EXIT.
ENDIF.
5. Copy of function group SAPLSGOS_OUTBOX and function module SGOS_SEND_OBJECT_WITH_NOTE to own copies.
6. Before calling cl_bcs=>short_message there are several steps to do:
- CALL METHOD cl_binary_relation=>read_links
- CALL FUNCTION 'SO_DOCUMENT_READ_API1' for all links
- cl_document_bcs=>create_document for all those documents (we are using types ATTA, NOTE and URL)
- APPEND those created documents to the attachment table and pass it to i_attachments of cl_bcs=>short_message
Solved issue!
COMMENT: This SDN wiki document is outdated and doesn't work any more:
http://wiki.sdn.sap.com/wiki/display/Snippets/ABAP-SendingGOSattachmentstoanemailaddress
Best regards,
Klaus -
How to setup Send Object With Note
Hi all,
I was trying to send a message to external email.
So, for eg, in ME23N, I click on this "Send object with note" to a address which is type U.
And in SCOT, business object is send as htm file type.
However, when I receive this mail that i send, there is no url being generated.
Below is the content of the email:
If you are not forwarded automatically, use the following link:
If the link is not to a valid server, log on to the SAP system and check the following object:
System: DEV
Client: 123
BOR Object Type: BUS2012
BOR Object Key: 4000000001
Which setting am I missing?
FYI, I'm using ECC 6. Extended notification has been setup.
Thanks
Edited by: Jack Wong on Jan 24, 2008 5:07 AMHi Martin,
Thanks for your reply.
However, I don't think it's because of the mail server deleted the attachment.
The htm file is attached to my external mail.
And the htm file said that it will forward me to the link.
I'm wondering which setting am I missing.
Thanks. -
How to send a mail as .txt attachment ,As data is seperated by pipeline
Hi ,
I got a requirement to send a mail in .txt format (Using OOPS) and the data inside the mail is seperated by '|' Pls help me in this regard.
i have written a mail to send the mail in .xls it is working fine for me in .xls but i dont know how to write the same for txt where data should be seperated by '|'.
Regards
sas
Ps: i am attaching my code. and please specify where i need to modify to achieve the same. and any perfromance enhacements are also welcome.
*& Report ZGBTEST02
REPORT YSAS_MAIL2.
*Changes done by sas
*PARAMETERS: P_MAIL TYPE AD_SMTPADR OBLIGATORY, " G C by sas
*P_MAIL1 TYPE AD_SMTPADR OBLIGATORY." G by sas
tables: adr6.
SELECT-OPTIONS:p_eaddr FOR adr6-SMTP_ADDR NO INTERVALS .
*end of changes by sas
DATA: I_GLT0 TYPE STANDARD TABLE OF GLT0.
DATA: I_MARA TYPE STANDARD TABLE OF MARA. " MARA Entries
* I_MARC TYPE STANDARD TABLE OF MARC. " MARC Entries
DATA: L_TEXT TYPE CHAR255. " Text
DATA: L_LINES TYPE I,
L_SIZE TYPE SOOD-OBJLEN.
" Size of Attachment
* Mail related
DATA: I_CONTENT TYPE SOLI_TAB, " Mail content
I_ATTACH TYPE SOLI_TAB, " Attachment
I_ATTACH1 TYPE SOLIX_TAB. " Attachment
DATA: L_SEND_REQUEST TYPE REF TO CL_BCS,
" E-Mail Send Request
L_DOCUMENT TYPE REF TO CL_DOCUMENT_BCS,
" E-Mail Attachment
L_RECIPIENT TYPE REF TO IF_RECIPIENT_BCS,
" Distribution List
L_SENDER TYPE REF TO IF_SENDER_BCS,
" Address of Sender
L_UNAME TYPE SALRTDRCPT,
" Sender Name(SY-UNAME)
L_BCS_EXCEPTION TYPE REF TO CX_DOCUMENT_BCS,
" BCS Exception
L_ADDR_EXCEPTION TYPE REF TO CX_ADDRESS_BCS,
" Address Exception
L_SEND_EXCEPTION TYPE REF TO CX_SEND_REQ_BCS.
" E-Mail sending Exception
*Constants------------------------------------------------------------*
CONSTANTS: C_TAB(1) TYPE C VALUE
CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB,
" Tab Character
C_CR(1) TYPE C VALUE CL_ABAP_CHAR_UTILITIES=>CR_LF,
" Line Feed for End-Of_line
C_EXT TYPE SOODK-OBJTP VALUE 'XLS'. " XLS Extension
START-OF-SELECTION.
SELECT * FROM MARA INTO TABLE I_MARA UP TO 20 ROWS.
IF SYST-SUBRC EQ 0.
* SELECT * FROM MARC INTO TABLE I_MARC FOR ALL ENTRIES IN I_MARA WHERE MATNR = I_MARA-MATNR.
ENDIF.
*select * from glt0 into table i_glt0.
* Preparing body of the Mail
MOVE 'SAP Material Master Records' TO L_TEXT.
APPEND L_TEXT TO I_CONTENT.
CLEAR L_TEXT.
APPEND L_TEXT TO I_CONTENT.
MOVE 'Thanks,' TO L_TEXT.
APPEND L_TEXT TO I_CONTENT.
MOVE 'SAP MM' TO L_TEXT.
APPEND L_TEXT TO I_CONTENT.
* Creates persistent send request
TRY.
L_SEND_REQUEST = CL_BCS=>CREATE_PERSISTENT( ).
* Creating Document
L_DOCUMENT = CL_DOCUMENT_BCS=>CREATE_DOCUMENT(
I_TYPE = 'RAW'
I_TEXT = I_CONTENT[]
I_SUBJECT = 'SAS MASTER Records' ).
* Preparing contents of attachment with Change Log
PERFORM PREPARE_ATTACHMENT.
DESCRIBE TABLE I_MARA LINES L_LINES.
* Size to multiplied by 2 for UNICODE enabled systems
L_SIZE = L_LINES * 2 * 255.
* Adding Attachment
CALL METHOD L_DOCUMENT->ADD_ATTACHMENT
EXPORTING
I_ATTACHMENT_TYPE = C_EXT
I_ATTACHMENT_SIZE = L_SIZE
I_ATTACHMENT_SUBJECT = 'MARA Details'
* i_att_content_hex = i_attach[].
I_ATT_CONTENT_TEXT = I_ATTACH[].
* DESCRIBE TABLE I_MARC LINES L_LINES.
* Size to multiplied by 2 for UNICODE enabled systems
* L_SIZE = L_LINES * 2 * 255.
** Adding Attachment
* CALL METHOD L_DOCUMENT->ADD_ATTACHMENT
* EXPORTING
* I_ATTACHMENT_TYPE = C_EXT
* I_ATTACHMENT_SIZE = L_SIZE
* I_ATTACHMENT_SUBJECT = 'MARC Details'
* I_ATT_CONTENT_HEX = I_ATTACH1[].
** i_att_content_text = i_attach1[].
* Add document to send request
CALL METHOD L_SEND_REQUEST->SET_DOCUMENT( L_DOCUMENT ).
DATA:LR_SENDER TYPE REF TO IF_SENDER_BCS,
LR_SEND TYPE REF TO CL_BCS.
* Preparing the sender object
* LR_SENDER = CL_CAM_ADDRESS_BCS=>CREATE_INTERNET_ADDRESS( sy-uname ).
DATA: L1_UNAME TYPE SY-UNAME.
L1_UNAME = SY-UNAME.
LR_SENDER = CL_SAPUSER_BCS=>CREATE( L1_UNAME ).
* Setting the sender
CALL METHOD L_SEND_REQUEST->SET_SENDER
EXPORTING
I_SENDER = LR_SENDER.
* E-Mail
LOOP AT P_EADDR.
TRANSLATE P_EADDR-LOW TO LOWER CASE.
L_RECIPIENT = CL_CAM_ADDRESS_BCS=>CREATE_INTERNET_ADDRESS( P_EADDR-LOW ).
CALL METHOD L_SEND_REQUEST->ADD_RECIPIENT
EXPORTING
I_RECIPIENT = L_RECIPIENT
I_EXPRESS = 'U'
I_COPY = ' '
I_BLIND_COPY = ' '
I_NO_FORWARD = ' '.
IF SY-subrc EQ 0.
WRITE:/'** SUCCESS: Email Sent to', p_eaddr-LOW COLOR COL_NORMAL.
ELSE.
WRITE:/'** ERROR: Failed to send Email to',p_eaddr-LOW COLOR COL_NEGATIVE .
ENDIF.
ENDLOOP.
*Trigger E-Mail immediately
L_SEND_REQUEST->SET_SEND_IMMEDIATELY( ' ' ).
CALL METHOD L_SEND_REQUEST->SEND( ).
COMMIT WORK.
CATCH CX_DOCUMENT_BCS INTO L_BCS_EXCEPTION.
CATCH CX_SEND_REQ_BCS INTO L_SEND_EXCEPTION.
CATCH CX_ADDRESS_BCS INTO L_ADDR_EXCEPTION.
ENDTRY.
*& Form PREPARE_ATTACHMENT
FORM PREPARE_ATTACHMENT .
FIELD-SYMBOLS: <LFS_TABLE>, " Internal table structure
<LFS_CON>. " Field Content
DATA: L_TEXT TYPE CHAR1024. " Text content for mail attachment
DATA: L_CON TYPE STRING. "(50) TYPE c. " Field Content in character format
DATA: L_STR TYPE STRING,
L_STR1 TYPE STRING.
DATA: LS_SOLIX TYPE SOLIX.
* Columns to be tab delimeted
LOOP AT I_MARA ASSIGNING <LFS_TABLE>.
DO.
ASSIGN COMPONENT SY-INDEX OF STRUCTURE <LFS_TABLE>
TO <LFS_CON>.
IF SY-SUBRC NE 0.
CONCATENATE C_CR L_TEXT INTO L_TEXT.
* CONCATENATE l_str c_cr l_text INTO l_str.
* ls_solix-line = l_text.
* APPEND ls_solix TO i_attach.
APPEND L_TEXT TO I_ATTACH.
EXIT.
ELSE.
CLEAR: L_CON.
MOVE <LFS_CON> TO L_CON.
CONDENSE L_CON.
IF SY-INDEX = 1.
CLEAR: L_TEXT.
MOVE L_CON TO L_TEXT.
ELSE.
CONCATENATE L_TEXT L_CON INTO L_TEXT
SEPARATED BY C_TAB.
ENDIF.
ENDIF.
ENDDO.
ENDLOOP.
** Columns to be tab delimeted
* LOOP AT I_MARC ASSIGNING <LFS_TABLE>.
* DO.
* ASSIGN COMPONENT SY-INDEX OF STRUCTURE <LFS_TABLE>
* TO <LFS_CON>.
* IF SY-SUBRC NE 0.
* CONCATENATE C_CR L_TEXT INTO L_TEXT.
** CONCATENATE l_str c_cr l_text INTO l_str1.
* LS_SOLIX-LINE = L_TEXT.
* APPEND LS_SOLIX TO I_ATTACH1.
* EXIT.
* ELSE.
* CLEAR: L_CON.
* MOVE <LFS_CON> TO L_CON.
* CONDENSE L_CON.
* IF SY-INDEX = 1.
* CLEAR: L_TEXT.
* MOVE L_CON TO L_TEXT.
* ELSE.
* CONCATENATE L_TEXT L_CON INTO L_TEXT
* SEPARATED BY C_TAB.
* ENDIF.
* ENDIF.
* ENDDO.
* ENDLOOP.
* i_attach1[] = i_attach[].
ENDFORM. " PREPARE_ATTACHMENTHi Sas,
I have copied the code and executed and it is working fine. I'm getting the text attachement in the email.
* Adding Attachment
CALL METHOD L_DOCUMENT->ADD_ATTACHMENT
EXPORTING
I_ATTACHMENT_TYPE = 'TXT' " C_EXT My change
I_ATTACHMENT_SIZE = L_SIZE
I_ATTACHMENT_SUBJECT = 'MARA Details'
* i_att_content_hex = i_attach[].
I_ATT_CONTENT_TEXT = I_ATTACH[].
CONCATENATE i_mara-MATNR
i_mara-ERSDA
i_mara-ERNAM
i_mara-LAEDA
INTO L_TEXT
SEPARATED BY '|'. -
How to send timer job email to "assigned to" feild value in a task list?
Hi All,
How to send timer job email to "assigned to" field value in a task list if due date is after two days from now?Create a SharePoint Designer Workflow and use "pause until date" option when an new item is created/update.
Using Server Object model, I believe you can create the timer job from item event receiver.
--Cheers -
How to send the spool output to the specific user during ALE distribution
Hi All
In ALE internal order Configuration done by BAPI Method SAVEREPLICA Business object BUS2075whenever user changed the internal order which is moved to the destination system because of change data setting in data element fields.
I want to know how to send the spool output of the changed internal order to the specific user during ALE distribution.
Please help me to reslove the above issue
Thanks & Regards
KRISHGUNASolved by myself
-
HELP!!! - How to send a file to a server?
How to send a file(as it is) to the server i'm connected to, if i have access to the output-stream?
Ummm read the APIs of anything you don't understand. Documentation is your friend, I hope you are not being lazy. But I'm in a good mood so here:
// Make sure you try to catch any IOExceptions
// Code expanded for clarity;
OutputStream yourOutputStream = getYourOutputStream; // You said you can get the outputstream to the server/socket. I assume you made a connection.
BufferedOutputStream bos = new BufferedOutputStream(
yourOutputStream ); // Always a good idea to use buffers
// Your object is your file
File yourObject = new File("blabla.jpg");
FileInputStream fis = new FileInputStream(yourObject);
byte[] b = new byte[1024]; // A good size read
while( fis.read(b) != -1){// read 1024 bytes into array at a time, returns -1 at end of file
bos.write(); //write to the server
fis.close(); // close the inputstream
yourObject = null; // help the gc
bos.flush(); // flush the buffer, close does this, but it is good form
bos.close(); // close the output to the server--Thunder
PS - The Duketer is in! -
Hi All:
I need to send <b>pdf</b> file to SAP XI, can I achive it using FILE adapter??
If not with File adapter then please let me know how I can send it to XI?
Thanks
AdityaHey
do you wnat to do some mapping in XI or simple transfer the file to the receiver system?
if its simple transfer then do a bypass scenario without any IR objects
/people/william.li/blog/2006/09/08/how-to-send-any-data-even-binary-through-xi-without-using-the-integration-repository
Thanx
Ahmad
Message was edited by:
Ahmad -
How to send doc files from one system to another using XI
Hi All,
I have a requirement to pick the word doc files from one file system and send these word document files to ECC system place in ECC application server.Can we achieve this requirement using XI. If so how we can do this. also let me know can we convert these doc files into proxy and send to ECC?. Please let me know. Thanks.
Regards,
RajeshYes You Can
XI Converts Unstructured data(That is non -XML)Type- in your case word doc and maps it to Target structure.
You can either use content conversion
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/venkat.donela/blog/2005/06/08/how-to-send-a-flat-file-with-various-field-lengths-and-variable-substructures-to-xi-30
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
/people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
/people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
You can either built a adaptermodule for the same(U nedd to have Some Java knowledge)
You can also convert without creating any objects in integration directory link for the same is
/people/william.li/blog/2006/09/08/how-to-send-any-data-even-binary-through-xi-without-using-the-integration-repository
***********Please Reward Points If find Helpful********* -
How to send Smartform and Script in email?
hi myself Devendra,
i ve some queries....regarding the Script and Smartform.
1- Can any body tell me how to send Script as well as Smartform layout in mail output.
I ve created script and smartform for the PO confirmation.
2- If i want to send both script and smartform layout of the PO, whenever created,automatically to the Vendor,then what i ve to do.Hey,
REPORT zemail_gm.
*********Variable Declarations *****************************
DATA: gv_form_name TYPE rs38l_fnam, " Used to store the function module generated by Smartform
gv_bin_filesize TYPE i, " Store the file size
gv_pos TYPE i,
gv_len TYPE i,
gv_tab_lines TYPE i.
********Constants *******************************************
Data : gc_text(11) type c value 'Form Output',
gc_tst(3) type c value 'TST',
gc_testing(7) type c value 'Testing'.
*********Work Area Declarations *****************************
DATA: gs_docdata TYPE sodocchgi1, " Data of an object which can be changed
gs_ctrlop TYPE ssfctrlop, " Smart Forms: Control structure
gs_outopt TYPE ssfcompop, " SAP Smart Forms: Smart Composer (transfer) options
gs_otfdata TYPE ssfcrescl, " Smart Forms: Return value at end of form printing
gs_reclist TYPE somlreci1, " SAPoffice: Structure of the API Recipient List
gs_pdf_tab TYPE tline, " Workarea for SAP Script Text Lines
gs_objbin TYPE solisti1, " SAPoffice: Single List with Column Length 255
gs_objpack TYPE sopcklsti1. " SAPoffice: Description of Imported Object Components
*********Internal tables Declarations *****************************
DATA: gt_reclist TYPE TABLE OF somlreci1, " SAPoffice: Structure of the API Recipient List
gt_pdf_tab TYPE TABLE OF tline, " SAPscript: Text Lines
gt_otf TYPE TABLE OF itcoo, " OTF Structure
gt_objbin TYPE TABLE OF solisti1, " SAPoffice: Single List with Column Length 255
gt_objpack TYPE TABLE OF sopcklsti1. " SAPoffice: Description of Imported Object Components
CLEAR : gv_form_name,
gs_ctrlop,
gs_outopt,
gs_otfdata,
gv_bin_filesize,
gv_pos,
gv_len,
gv_tab_lines.
START-OF-SELECTION.
Generate Function Module name
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZPDF_G'
IMPORTING
fm_name = gv_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.
Assigning values to Form Control Structure and Form Composer
gs_ctrlop-getotf = 'X'.
gs_ctrlop-no_dialog = 'X'.
gs_outopt-tdnoprev = 'X'.
Getting the OTFDATA
CALL FUNCTION gv_form_name
EXPORTING
control_parameters = gs_ctrlop
output_options = gs_outopt
user_settings = 'X'
IMPORTING
job_output_info = gs_otfdata
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.
Assigning the OTFDATA to OTF Structure table
CLEAR gt_otf.
gt_otf] = gs_otfdata-otfdata[.
Convert the OTF DATA to SAP Script Text lines
CLEAR gt_pdf_tab.
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
max_linewidth = 132
IMPORTING
bin_filesize = gv_bin_filesize
TABLES
otf = gt_otf
lines = gt_pdf_tab
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
OTHERS = 4.
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Assigning the Description of the object sent in the mail
CLEAR gs_docdata.
gs_docdata-obj_name = gc_tst.
gs_docdata-obj_descr = gc_testing.
Assigning the email id to Structure of the API Recipient List table
CLEAR : gt_reclist, gs_reclist.
gs_reclist-receiver = '<give the mail id of the receiver'.
gs_reclist-rec_type = 'U'.
APPEND gs_reclist TO gt_reclist.
Passing the SAP Script text lines to SAPoffice: Single List with Column Length 255 table
CLEAR : gs_objbin, gs_pdf_tab.
LOOP AT gt_pdf_tab INTO gs_pdf_tab.
gv_pos = 255 - gv_len.
IF gv_pos > 134. "length of pdf_table
gv_pos = 134.
ENDIF.
gs_objbin+gv_len = gs_pdf_tab(gv_pos).
gv_len = gv_len + gv_pos.
IF gv_len = 255. "length of out (contents_bin)
APPEND gs_objbin TO gt_objbin.
CLEAR: gs_objbin, gv_len.
IF gv_pos < 134.
gs_objbin = gs_pdf_tab+gv_pos.
gv_len = 134 - gv_pos.
ENDIF.
ENDIF.
ENDLOOP.
IF gv_len > 0.
APPEND gs_objbin TO gt_objbin.
ENDIF.
Filling the details in SAPoffice: Description of Imported Object Components table
DESCRIBE TABLE gt_objbin LINES gv_tab_lines.
CLEAR gs_objbin.
READ TABLE gt_objbin INTO gs_objbin INDEX gv_tab_lines.
IF sy-subrc = 0.
gs_objpack-doc_size = ( gv_tab_lines - 1 ) * 255 + STRLEN( gs_objbin ).
gs_objpack-transf_bin = 'X'.
gs_objpack-head_start = 1.
gs_objpack-head_num = 0.
gs_objpack-body_start = 1.
gs_objpack-body_num = gv_tab_lines.
gs_objpack-doc_type = 'PDF'.
gs_objpack-obj_name = 'ATTACHMENT'.
gs_objpack-obj_descr = 'test'.
APPEND gs_objpack TO gt_objpack.
ENDIF.
Sending the Form Output in the PDF format to email
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = gs_docdata
put_in_outbox = 'X'
commit_work = 'X'
TABLES
packing_list = gt_objpack
contents_bin = gt_objbin
receivers = gt_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.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
WRITE 'Sent Successfully'.
ENDIF.
SUBMIT rsconn01
WITH mode EQ 'INT'
AND RETURN.
END-OF-SELECTION.Regards,
Midhun Abraham
Edited by: Midhun Abraham on Oct 12, 2008 4:06 AM -
Need to send object instances over the network
I found no other way to implement a switch case to cast objects on both sides to solve my problem.
Basically I need to send objects over a network protocol based on XML, the object is sent inside XML
converted in base64, overall encoding of XML is utf-8.
Let's suppose in my network there are 2 peers connected via socket.
I have multiple instances of different types on both peers but I want to keep these instances
synchronized. If something changes on side A, side B must receive that instance and replace
it in the correct place (just one way, from A to B).
When I receive such instance on B I want to cast it to it's proper instance
of it's proper type and I am scratching my head on how could I implement this without some
sort of unique ID table and switch case.
If I had 1 instance per type could it be done easily?
But I need to keep in synch many instances per type.
Is there any dynamic casting that I can trigger based on some type/instanceID information
I could send along the object?I found no other way to implement a switch case to cast objects on both sides to solve my problem.
Basically I need to send objects over a network protocol based on XML, the object is sent inside XML
converted in base64, overall encoding of XML is utf-8.
Let's suppose in my network there are 2 peers connected via socket.
I have multiple instances of different types on both peers but I want to keep these instances
synchronized. If something changes on side A, side B must receive that instance and replace
it in the correct place (just one way, from A to B).
When I receive such instance on B I want to cast it to it's proper instance
of it's proper type and I am scratching my head on how could I implement this without some
sort of unique ID table and switch case.
If I had 1 instance per type could it be done easily?
But I need to keep in synch many instances per type.
Is there any dynamic casting that I can trigger based on some type/instanceID information
I could send along the object?
Maybe you are looking for
-
Can I use a graphics tablet such as Wacom with Keynote?
I would like to be able to use my Graphics tablet with Keynote to write on my slides while teaching. I am able to use the pen tablet with Powerpoint, I just select pen for pointer and pen color. How do I do this in Keynote? Thanks for your help, Jack
-
IWork Apps Won't Install from Redeem Codes
I've had this issue on two separate iPads this morning with two different clients who are each using different Apple IDs. When given a redeem code to install Pages or Keynote, the iPad 2 (iOS 5.0.1) accepts the code in the App Store and says "Thank Y
-
How to compile my own applications
Hello, I have been working through a book on J2ee, and getting on very well, apart from the fact that I cant create my own applications because I dont know how to compile them!!! Im used to just typing javac classsname.java, and it all gets done - I'
-
I have Full DB Backup File, how can i use this backup file to install fresh sap to recover my data plz suggest me the steps
-
How to add NAS for iTunes and backups
I would like to add NAS to home network of older iMac (OSX 10.7.4), win 7 notebook, soon to be added MacAir, plus iPad, iPhones, and sonos. I would like to move iTunes from iMac external drive to NAS and also use NAS for time machine backups of the