How to feel interal table in Workflow?

Hi Experts,
Right now i m creating one workflow in which i have an internal table with 2 fields. This internal table is multiline internal table.
But the thing is i dont know how to feel entry into the internal table. I hv created one workarea with 2 fields. but i m not getting that how i will pass those values into that work area :(.
after passing into the workarea i think i will be able to append values into the internal table.
please help me out with this problem.
if more clarifications are required then also ask.
Thank you in advance.
Regards,
Hetal....

Hey Hetal,
Thanks for clearing the question.
Well, youur requirement is that you want to pass the values
DOKAR STY
DOKNR STYLEDOC50
DOKVR 000
DOKTL 00
in a table.
It is very very simple.
Well, I think you need to pass these values from the workflow container to the function module within the method.
Well, first you have to pass the values ifirst to the workflow container, If you have then it is lovely otherwise you have to pass programatically.
If you workflow container is triggered by events:-
Make a container element in the workflow container and the event container.
Do the bindings so that the values of the event container table goes to the workflow container table.
Now, while populating the event container in the code do the following things:
Create another internal table with the same structure in the code and then populate the table.
Create a container table with the type SWCONT.
now write the statement SWC_SET_TABLE <container table> 'ELEMENT NAME of the table in the event container' Internal table.
This will set the values from the code to the event container.
If your workflow container is being triggered by function module:-
Similarly for this case also:-
Now, while populating the event container in the code do the following things:
Create another internal table with the same structure in the code and then populate the table.
Create a container table with the type SWCONT.
now write the statement SWC_SET_TABLE <container table> 'ELEMENT NAME of the table in the event container' Internal table.
This will set the values from the code to the event container.
If you are using some activity within the workflow to populate the table with those values:-
Within the method you have to write the code:
Now, while populating the event container in the code do the following things:
Create another internal table with the same structure in the code and then populate the table.
Create a container table with the type SWCONT.
now write the statement SWC_SET_TABLE <container table> 'ELEMENT NAME of the table in the event container' Internal table.
This will set the values from the code to the event container.
Now in the activity and the method you have to do the bindings and the values will be passed.
You can see the values in the workflow container.
I think that will solve the problem.
Warm Regards.
Abhijit.

Similar Messages

  • How to refresh interal table in Webdynpro ABAP

    Hi all,
    I want to delete/free/refresh interal table in webdynpro abap.
    One of the form gave solution to pass blank internal table?
    I cleared node and itab in webdynpro, but internally SAP doesn't delete the context node and itab values.
    Please help me in how to refresh itab in webdynpro abap.
    Regards,
    Prasad

    Hi Srinivas,
    it doesn't work.
    I wrote like this in action list method.
    method lta_task.
    if not lcontext_node_task is intial.
    context_node_task->invalidate().
    endif.
    select.......
    populate data into internal table lt_task_output_table .
    if not lt_task_output_table  is inital.
        context_node_task = wd_context->get_child_node( name = 'TASK_PER').
        context_node_task->bind_table( wd_this->lt_task_output_table ).
    endif.
    endmethod.
    Starting of the mehod i have written to inavlidate, before upating the itab
    but donesn;t work. Where should I write the code
    Reagards,
    Prasad

  • How can u trace process of workflow throug workflow base table.

    Hi,
    My previous question might be confusing
    Just want to ask
    How can u trace process of workflow throug Which workflow base table.
    Please It's urgent
    Thanks
    Bachan

    Bachan,
    Why do you need to enable trace from the backend? You can run "bde_wf_item.sql" script, this script gives similar information as wfstatus.sql and wfstat.sql give but with more debugging information
    Note: 187071.1 - bde_wf_item.sql - Runtime Data of a Single Workflow Item
    https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=187071.1

  • How to create a HTML Table in Workflow Notification ?

    Hi,
    I have a requirement to display multiple records in a HTML table in Workflow Notification. I have developed the code. In my Notification, I am seeing HTML tags and not a formatted HTML report. Appreciate your help and comments.
    The following is what I have done in WF.
    1. Define attribute in WF of type Document
    2. Define Message in Text Body ( Should i also copy the same thing in HTML Body ??)
    The following is my PL/SQL
    Variable l_table is defined as varchar2(30000)
    -- HTML Table Heading
    l_table := '<table><tr><td>Amount</td>
    <td>Description</td>
    <td>Type 1099</td>
    </tr>';
    WF_ENGINE.SetItemAttrText(itemtype,
    itemkey,
    'FRB_DISTRIBUTION_HISTORY',
    l_table);
    When I get a notification, I get the following sample
    <table><tr><td>Amount</td>
    <td>Description</td>
    <td>Type 1099</td>
    <td>Receipt Required Flag</td>
    <td>Invoice Id</td>
    <td>Invoice Distribution Id</td>
    </tr><tr><td>100</td>
    <td></td>
    <td>MISC7</td>
    <td></td>
    <td>429684</td>
    <td>464834</td>
    </tr></table>
    I am missing something, Can you please let me know, what am i missing.
    Kiran

    Hi Matt,
    I am working on AP_WFAPPROVAL_PKG (Oracle EBS Invoice Approval Package).
    I have defined a Workflow Attribute as Type 'Document' (in Workflow Builder)
    In my AP_WFAPPROVAL_PKG Package, I am retrieving my values and returning it to a variable of type varchar2(32000) and seting the WF variable(displayed below).
    WF_ENGINE.SetItemAttrText(itemtype,
    itemkey,
    'FRB_DISTRIBUTION_HISTORY', -- This is my WF Attribute of type 'Document'
    l_table);
    When I see the notification, i get the format displayed below (I do see the correct values generated, but they appear as tag, and not as a HTML Table Report)
    <table><tr><td>Amount</td>
    <td>Description</td>
    <td>Type 1099</td>
    <td>Receipt Required Flag</td>
    <td>Invoice Id</td>
    <td>Invoice Distribution Id</td>
    </tr> <tr><td>60</td>
    <td></td>
    <td>MISC7</td>
    <td></td>
    <td>429681</td>
    <td>464827</td>
    </tr><tr><td>40</td>
    <td></td>
    <td>MISC7</td>
    <td></td>
    <td>429681</td>
    <td>464828</td>
    </tr>
    Please advise
    Kiran

  • Can someone tell me how to work with XML and workflow?

    Ive insert a XML file in a CLOB data type column of a table. Now I want to
    use some tags of this clob in a process of ora workflow. I know that there is a standard function get tag, but how can I say where the tag must get his information?
    Oracle should foreseen a document with step-by-step instructions, how to use XML in Oracle workflow. There is nothing to find on OTN or Metalink or even the internet to do this.
    Thanks for your time

    If you are using the standard XML Get Tag Value activity, you can specify the tag set in XPath notation. For details about this notation, see the W3C Recommendation "XML Path Language (XPath)". Note that this standard activity looks for the CLOB within an event message structure. See:
    http://otn.oracle.com/docs/products/oracle9i/doc_library/release2/workflow.920/a95265/std21.htm#xmlgettval
    Ive insert a XML file in a CLOB data type column of a table. Now I want to
    use some tags of this clob in a process of ora workflow. I know that there is a standard function get tag, but how can I say where the tag must get his information?
    Oracle should foreseen a document with step-by-step instructions, how to use XML in Oracle workflow. There is nothing to find on OTN or Metalink or even the internet to do this.
    Thanks for your time

  • Alignment in dynamic table in workflow mail

    I have a workflow with a task of sending mail to SAP inbox. The body of the mail should display a table with a structure that is dynamically determined at run time. The workflow is triggered from a report in which a dynamic table is first created, filled with data. Then, before the event is raised, each line of the table is converted to ABAPTXT255 and then the table of string is passed to the workflow. The content of the original table is then shown as a table of strings.
    The problem is that, because I convert the content to string before passing the table to workflow, I’ve lost control over the alignment of columns I originally had before the conversion, and the font used in SAP inbox doesn’t help either. Hence, the table appears in the mail as having no alignment at all.
    My dilemma is that, I cannot think of another way of passing a table with dynamic structure to workflow, except to convert everything to string first. But, then I lost control over the alignment.
    Has anyone come across anything similar to this before? Any comments or suggestions?
    Thanks in advance.

    Can u send the code how u r doing this?
    Also let me know that when u see the contents in the inbox, from menu path Settings-> text in non-proportional font.
    Are your contents aligned when u do the above setting?
    Regds
    Samant

  • How to handle Multile Table Group in InDesign

    my XML file having multiple table group tables content but InDesign not supporting while importing xml files?.. could please help and suggest any buddy how to handle multiple table group in InDesign.... because i received many jobs xml workflow with multiple table group.

    its urgent

  • How to find Target tables in informatica

    Hi Guys,
    Could you please tell me the How to find target tables in OBIEE from OBIEE Repository
    Please any one reply me.
    Thanks,
    Siva
    Edited by: 912736 on Mar 20, 2012 7:12 PM

    Hi
    Open Repository:
    1- On Presentation Layer: Navigate to Subject Area which you want to trace Target Table.
    2- Right Click on desire Measure /Object
    3- List will appear and select 'Query for Physical Table' or 'Query fro Physical Column'.
    4- Window will appear and it will show you list of relevant Physical Tables.
    5- Select one of table and press Go button.
    Your target Tables are in Data warehouse not infromatica, Informatica is Responsible to Design & run your Workflows and other activities.
    However to trace Target table from Informatica (Workflow);
    If you want to trace Target Table than in Informatica you have 2 options.
    1- Openfirst you need to know Workflow, open workflow right click and in property you will see Query and from query you will know target table.
    2- open workflow from Workflow you will Know Mapping and open mapping than you will know Mapplet and from Mapplet you will know target table.
    Open Client >>PowerCenter and Open Mapllet, you will see Target
    Regards
    Edited by: Sher Ullah Baig on Mar 22, 2012 5:21 PM

  • ADF Desktop Integration : How to delete the table in Excel?

    Hi,
    I am using Jdev 11.1.1.3.0 and Excel 2007 for Oracle ADF DI, I had created an ADF table using pageDef file in the excel. Now I wanted to delete that table and use a different pageDef file.
    I could not find a way to delete that table.
    I deleted full row of tables and then I used different pageDef file and created a new adf table. But when I am running this version of excel, I am getting runtime exception and excel is getting corrupted.
    My question how to delete the table not corrupting the Excel.
    Thanks
    Pavan

    Pavan,,
    Welcome to OTN.
    You can delete the table by selecting the top left column (of the table) and then select delete from the ADFdi tab.
    Refer the documentation for more info.
    http://docs.oracle.com/cd/E17904_01/web.1111/e10139/get_start_dev_tools.htm#ADFDI608
    -Arun

  • How to update the table available in BADI method

    Hi Friends,
    I have to implement one badi ME_REQ_POSTED for purchase requistion, in this badi  I have to read first line item and do
    some check...if that check is true i need to update subsequent line item (line 20, 30, 40 or so) with purchase group and MRP controller.
    In this BADI i have method POSTED, in this method parameter IM_EBAN is a table which i need to modify with my different
    values for purchase group and MRP controller.
    Kindly let me know how to update this table, so the changes can be reflected in purchase requistion.
    Since when I tried to directly modify the table in a loop, system throw one error stating IM_EBAN can not be modified.
    kindly help.
    pradeep

    hi
    I have implemented this exit but it does not stop at it while saving Purchase requistion. But my previous BADI stops at it when saving.
    Kindly guide.

  • How to set the table input in Query template?

    Hi all.
    I need to call a Bapi_objcl_change, with import parameter and a table as an input. I have done this, in BLS. I have set the table input in the
    form of xml. In BLS, I get the output(the value gets change in SAP R3, what i have given in BLS).  But if i set the same xml structure  in
    query template, I didn't get the output. Table input parameter does not take that xml source.  How to set the table input in Query template?
    can anyone help me?
    Regards,
    Hemalatha

    Hema,
    You probably need to XML encode the data so that it will pass properly and then xmldecode() it to set the BAPI input value.
    Sam

  • How to update the table value in the valuechange event?

    I have an input field in the datatable with the valueChangeListener
    <rich:dataTable id="cart" value="#{cart.cartList}" var="item">
    <h:inputText value="#{item.cost}" id="qty" valueChangeListener="#{items.updateCost}" onchange="submit()">
    <h:outputText value="#{item.errorMsg}"> </h:outputText>
    in the backing bean
         Item item = (Item) model.getRowData();
    // do some update, if the cost too larger, change to max_cost
         item.setCost(max_cost);
         item.setErrorMsg("Error Msg");
    After calling the valuechange method, the screen output doesn't update the cost.
    How to update the table value in the valuechange event?

    As you're misusing the valueChangeListener to set another input field, you need to skip the update model values phase. Otherwise the value set in the valueChangeListener will be overridden by the submitted value. You can do this by calling the FacesContext#renderResponse() inside the valueChangeListener method. This will shift the current phase immediately to the render response phase, hereby skipping the update model values and invoke application phases.

  • How to import external table, which exist in export dump file.

    My export dump file has one external table. While i stated importing into my developement instance , I am getting the error "ORA-00911: invalid character".
    The original definition of the extenal table is as given below
    CREATE TABLE EXT_TABLE_EV02_PRICEMARTDATA
    EGORDERNUMBER VARCHAR2(255 BYTE),
    EGINVOICENUMBER VARCHAR2(255 BYTE),
    EGLINEITEMNUMBER VARCHAR2(255 BYTE),
    EGUID VARCHAR2(255 BYTE),
    EGBRAND VARCHAR2(255 BYTE),
    EGPRODUCTLINE VARCHAR2(255 BYTE),
    EGPRODUCTGROUP VARCHAR2(255 BYTE),
    EGPRODUCTSUBGROUP VARCHAR2(255 BYTE),
    EGMARKETCLASS VARCHAR2(255 BYTE),
    EGSKU VARCHAR2(255 BYTE),
    EGDISCOUNTGROUP VARCHAR2(255 BYTE),
    EGREGION VARCHAR2(255 BYTE),
    EGAREA VARCHAR2(255 BYTE),
    EGSALESREP VARCHAR2(255 BYTE),
    EGDISTRIBUTORCODE VARCHAR2(255 BYTE),
    EGDISTRIBUTOR VARCHAR2(255 BYTE),
    EGECMTIER VARCHAR2(255 BYTE),
    EGECM VARCHAR2(255 BYTE),
    EGSOLATIER VARCHAR2(255 BYTE),
    EGSOLA VARCHAR2(255 BYTE),
    EGTRANSACTIONTYPE VARCHAR2(255 BYTE),
    EGQUOTENUMBER VARCHAR2(255 BYTE),
    EGACCOUNTTYPE VARCHAR2(255 BYTE),
    EGFINANCIALENTITY VARCHAR2(255 BYTE),
    C25 VARCHAR2(255 BYTE),
    EGFINANCIALENTITYCODE VARCHAR2(255 BYTE),
    C27 VARCHAR2(255 BYTE),
    EGBUYINGGROUP VARCHAR2(255 BYTE),
    QTY NUMBER,
    EGTRXDATE DATE,
    EGLISTPRICE NUMBER,
    EGUOM NUMBER,
    EGUNITLISTPRICE NUMBER,
    EGMULTIPLIER NUMBER,
    EGUNITDISCOUNT NUMBER,
    EGCUSTOMERNETPRICE NUMBER,
    EGFREIGHTOUTBOUNDCHARGES NUMBER,
    EGMINIMUMORDERCHARGES NUMBER,
    EGRESTOCKINGCHARGES NUMBER,
    EGINVOICEPRICE NUMBER,
    EGCOMMISSIONS NUMBER,
    EGCASHDISCOUNTS NUMBER,
    EGBUYINGGROUPREBATES NUMBER,
    EGINCENTIVEREBATES NUMBER,
    EGRETURNS NUMBER,
    EGOTHERCREDITS NUMBER,
    EGCOOP NUMBER,
    EGPOCKETPRICE NUMBER,
    EGFREIGHTCOSTS NUMBER,
    EGJOURNALBILLINGCOSTS NUMBER,
    EGMINIMUMORDERCOSTS NUMBER,
    EGORDERENTRYCOSTS NUMBER,
    EGRESTOCKINGCOSTSWAREHOUSE NUMBER,
    EGRETURNSCOSTADMIN NUMBER,
    EGMATERIALCOSTS NUMBER,
    EGLABORCOSTS NUMBER,
    EGOVERHEADCOSTS NUMBER,
    EGPRICEADMINISTRATIONCOSTS NUMBER,
    EGSHORTPAYMENTCOSTS NUMBER,
    EGTERMCOSTS NUMBER,
    EGPOCKETMARGIN NUMBER,
    EGPOCKETMARGINGP NUMBER,
    EGWEIGHTEDAVEMULTIPLIER NUMBER
    ORGANIZATION EXTERNAL
    ( TYPE ORACLE_LOADER
    DEFAULT DIRECTORY EV02_PRICEMARTDATA_CSV_CON
    ACCESS PARAMETERS
    LOCATION (EV02_PRICEMARTDATA_CSV_CON:'VPA.csv')
    REJECT LIMIT UNLIMITED
    NOPARALLEL
    NOMONITORING;
    While importing , when i seen the log file , it is failing the create the external table. Getting the error "ORA-00911: invalid character".
    Can some one suggest how to import external tables
    Addressing this issue will be highly appriciated.
    Naveen

    Hi Srinath,
    When i observed the create table syntax of external table from import dump log file, it show few lines as below. I could not understand these special characters. And create table definationis failing with special character viz ORA-00911: invalid character
    ACCESS PARAMETERS
    LOCATION (EV02_PRICEMARTDATA_CSV_CON:'VPA.csv').
    I even observed the create table DDL from TOAD. It is same as i mentioned earlier
    Naveen

  • How to get the table of value field? and can we expand the technical limits

    Dear
    I have created value field in COPA with KEA6. And now, I need the table which the value fields are saved. Yet, I have tried a lot to find it and get failure? Can any guy help me? Please tell me how to get the table of a value field.
    And another question is that, can we extend the technical limits for the number of value field for ECC6.0?
    We have a note for R.4.x Please see below:
    OSS note 160892
    You can display the length of a data record using Transaction KEA0 ('Maintain Operating Concern'). After you have navigated to the 'Characteristics Screen' or to the 'Value field Screen' choose menu path 'Extras -> Technical Limits'.
    The maximum displayed here under 'Length in bytes on the DB' is the maximum length permitted by the Dictionary. The reserve required for the release upgrade must be subtracted from this value.
    To increase the allowed number of the value fields, increase the value that is assigned to field ikcge-bas_max_cnt (FORM init_ikcge_ke USING fm_subrc, approx. line 165) in Include FKCGNF20. It specifies the number of the possible value fields. The corresponding part of the source code is attached to the note as a correction.
    David Sun
    Regards!

    how to extend the limit of value numbers? please see the original question.

  • How to Send Internal table to SAP Spool using Function Modules or Methods?

    Hi Experts,
    How to Send Internal table to SAP Spool using Function Modules or Methods?
    Thanks ,
    Kiran

    This is my code.
    I still get the no ABAP list data for the spool, even tho I can see it sp01?
    REPORT  Z_MAIL_PAYSLIP.
    * Declaration Part *
    tables: PERNR, PV000, T549Q, V_T514D, HRPY_RGDIR.
    infotypes: 0000, 0001, 0105, 0655.
    data: begin of ITAB occurs 0,
      MTEXT(25) type C,
      PERNR like PA0001-PERNR,
      ABKRS like PA0001-ABKRS,
      ENAME like PA0001-ENAME,
      USRID_LONG like PA0105-USRID_LONG,
    end of ITAB.
    data: W_BEGDA like HRPY_RGDIR-FPBEG,
          W_ENDDA like HRPY_RGDIR-FPEND.
    data: RETURN like BAPIRETURN1 occurs 0 with header line.
    data: P_INFO like PC407,
          P_FORM like PC408 occurs 0 with header line.
    data: P_IDX type I,
          MY_MONTH type T549Q-PABRP,
          STR_MY_MONTH(2) type C,
          MY_YEAR type T549Q-PABRJ,
          STR_MY_YEAR(4) type C,
          CRLF(2) type x value '0D0A'.
    data: W_CMONTH(10) type C.
    data: TAB_LINES type I,
          ATT_TYPE like SOODK-OBJTP.
    data: begin of P_INDEX occurs 0,
            INDEX type I,
    end of P_INDEX.
    constants: begin of F__LTYPE, "type of line
       CMD like PC408-LTYPE value '/:',  "command
       TXT like PC408-LTYPE value 's',   "textline
    end of F__LTYPE.
    constants: begin of F__CMD, "commands
      NEWPAGE like PC408-LINDA value '',
    end of F__CMD.
    data: P_LIST like ABAPLIST occurs 1 with header line.
    *data: OBJBIN like SOLISTI1 occurs 10 with header line,
    data: OBJBIN like  LVC_S_1022 occurs 10 with header line,
          DOCDATA like SODOCCHGI1,
          OBJTXT like SOLISTI1 occurs 10 with header line,
          OBJPACK like SOPCKLSTI1 occurs 1 with header line,
          RECLIST like SOMLRECI1 occurs 1 with header line,
          OBJHEAD like SOLISTI1 occurs 1 with header line,
          it_mess_att LIKE solisti1 OCCURS 0 WITH HEADER LINE,
          gd_buffer type string,
          l_no_of_bytes TYPE i,
          l_pdf_spoolid LIKE tsp01-rqident,
          l_jobname     LIKE tbtcjob-jobname.
    data: file_length  type int4,
          spool_id     type rspoid,
          line_cnt     type i.
    *-------------------------------------------------------------------* * INITIALIZATION *
    OBJBIN = ' | '.
    append OBJBIN.
    OBJPACK-HEAD_START = 1.
    data: S_ABKRS like PV000-ABKRS.
    data: S_PABRP like T549Q-PABRP.
    data: S_PABRJ like T549Q-PABRJ.
    * SELECTION SCREEN                                                  *
    selection-screen begin of block BL1.
    parameters: PAY_VAR like BAPI7004-PAYSLIP_VARIANT default 'ESS_PAYSLIPS' obligatory.
    selection-screen end of block BL1.
    START-OF-SELECTION.
      s_ABKRS = PNPXABKR.
      S_PABRP = PNPPABRP.
      s_pabrj = PNPPABRJ.
      w_begda = PN-BEGDA.
      w_endda = PN-ENDDA.
    get pernr.
    *                                 "Check active employees
      rp-provide-from-last p0000 space pn-begda  pn-endda.
      CHECK P0000-STAT2 IN PNPSTAT2.
    *                                 "Check Payslip Mail flag
      rp-provide-from-last p0655 space pn-begda  pn-endda.
      CHECK P0655-ESSONLY = 'X'.
      rp-provide-from-last p0001 space pn-begda  pn-endda.
    *                                 "Find email address
      RP-PROVIDE-FROM-LAST P0105 '0030' PN-BEGDA PN-ENDDA.
      if p0105-usrid_LONG ne ''.
        ITAB-PERNR      = P0001-PERNR.
        ITAB-ABKRS      = P0001-ABKRS.
        ITAB-ENAME      = P0001-ENAME.
        ITAB-USRID_LONG = P0105-USRID_LONG.
        append itab.
        clear itab.
      endif.
      "SY-UCOMM ='ONLI'
    END-OF-SELECTION.
    *------------------------------------------------------------------* start-of-selection.
      write : / 'Payroll Area        : ', S_ABKRS.
      write : / 'Payroll Period/Year : ',STR_MY_MONTH,'-',STR_MY_YEAR. write : / 'System Date : ', SY-DATUM.
      write : / 'System Time         : ', SY-UZEIT.
      write : / 'User Name           : ', SY-UNAME.
      write : / SY-ULINE.
      sort ITAB by PERNR.
      loop at ITAB.
        clear : P_INFO, P_FORM, P_INDEX, P_LIST, OBJBIN, DOCDATA, OBJTXT, OBJPACK, RECLIST, TAB_LINES.
        refresh : P_FORM, P_INDEX, P_LIST, OBJBIN, OBJTXT, OBJPACK, RECLIST.
    *                                                  Retrieve Payroll results sequence number for this run
        select single * from HRPY_RGDIR where PERNR eq ITAB-PERNR
                                        and FPBEG ge W_BEGDA
                                        and FPEND le W_ENDDA
                                        and SRTZA eq 'A'.
    *                                                  Produce payslip for those payroll results
        if SY-SUBRC = 0.
          call function 'GET_PAYSLIP'
            EXPORTING
              EMPLOYEE_NUMBER = ITAB-PERNR
              SEQUENCE_NUMBER = HRPY_RGDIR-SEQNR
              PAYSLIP_VARIANT = PAY_VAR
            IMPORTING
              RETURN          = RETURN
              P_INFO          = P_INFO
            TABLES
              P_FORM          = P_FORM.
          check RETURN is initial.
    *                                                 remove linetype from generated payslip
          loop at p_form.
            objbin = p_form-linda.
            append objbin.
            line_cnt = line_cnt + 1.
          endloop.
          file_length = line_cnt * 1022.
    *                                                 create spool file of paylsip
          CALL FUNCTION 'SLVC_TABLE_PS_TO_SPOOL'
            EXPORTING
              i_file_length = file_length
            IMPORTING
              e_spoolid     = spool_id
            TABLES
              it_textdata   = objbin.
          IF sy-subrc EQ 0.
            WRITE spool_id.
          ENDIF.
          DESCRIBE table objbin.
          DATA PDF LIKE TLINE OCCURS 100 WITH HEADER LINE.
          CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
            EXPORTING
              SRC_SPOOLID                    = spool_id
              NO_DIALOG                      = ' '
              DST_DEVICE                     = 'MAIL'
    *      PDF_DESTINATION                =
    *    IMPORTING
    *      PDF_BYTECOUNT                  = l_no_of_bytes
    *      PDF_SPOOLID                    = l_pdf_spoolid
    *      LIST_PAGECOUNT                 =
    *      BTC_JOBNAME                    =
    *      BTC_JOBCOUNT                   =
            TABLES
              PDF                            = pdf
            EXCEPTIONS
              ERR_NO_ABAP_SPOOLJOB           = 1
              ERR_NO_SPOOLJOB                = 2
              ERR_NO_PERMISSION              = 3
              ERR_CONV_NOT_POSSIBLE          = 4
              ERR_BAD_DESTDEVICE             = 5
              USER_CANCELLED                 = 6
              ERR_SPOOLERROR                 = 7
              ERR_TEMSEERROR                 = 8
              ERR_BTCJOB_OPEN_FAILED         = 9
              ERR_BTCJOB_SUBMIT_FAILED       = 10
              ERR_BTCJOB_CLOSE_FAILED        = 11
              OTHERS                         = 12
          IF SY-SUBRC <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
          ENDIF.
    *Download PDF file C Drive
      CALL FUNCTION 'GUI_DOWNLOAD'
        EXPORTING
          filename = 'C:\itab_to_pdf.pdf'
          filetype = 'BIN'
        TABLES
          data_tab = pdf.
    * Transfer the 132-long strings to 255-long strings
    *  LOOP AT pdf.
    *    TRANSLATE pdf USING ' ~'.
    *    CONCATENATE gd_buffer pdf INTO gd_buffer.
    *  ENDLOOP.
    *  TRANSLATE gd_buffer USING '~ '.
    *  DO.
    *    it_mess_att = gd_buffer.
    *    APPEND it_mess_att.
    *    SHIFT gd_buffer LEFT BY 255 PLACES.
    *    IF gd_buffer IS INITIAL.
    *      EXIT.
    *    ENDIF.
    *  ENDDO.
          OBJHEAD = 'Objhead'.
          append OBJHEAD.
    * preparing email subject
          concatenate W_ENDDA(6)
                    ' Payslip-'
                    ITAB-ENAME+0(28)
                    ITAB-PERNR+4(4) ')'
                 into DOCDATA-OBJ_DESCR.
          DOCDATA-OBJ_NAME = 'Pay Slip'.
          DOCDATA-OBJ_LANGU = SY-LANGU.
          OBJTXT = 'Pay Slip.'.
          append OBJTXT.
    *prepare email lines
          OBJTXT = DOCDATA-OBJ_DESCR.
          append OBJTXT.
          OBJTXT = 'Please find enclosed your current payslip.'.
          append OBJTXT.
    * Write Attachment(Main)
    * 3 has been fixed because OBJTXT has fix three lines
          read table OBJTXT index 3.
    *    DOCDATA-DOC_SIZE = ( 3 - 1 ) * 255 + strlen( OBJTXT ).
          clear OBJPACK-TRANSF_BIN.
          OBJPACK-HEAD_START = 1.
          OBJPACK-HEAD_NUM = 0.
          OBJPACK-BODY_START = 1.
          OBJPACK-BODY_NUM = 3.
          OBJPACK-DOC_TYPE = 'RAW'.
          append OBJPACK.
    * Create Message Attachment
          ATT_TYPE = 'PDF'.
          describe table OBJBIN lines TAB_LINES.
          read table OBJBIN index TAB_LINES.
    *    OBJPACK-DOC_SIZE = ( TAB_LINES - 1 ) * 255 + strlen( OBJBIN ).
          OBJPACK-TRANSF_BIN = 'X'.
          OBJPACK-HEAD_START = 1.
          OBJPACK-HEAD_NUM = 0.
          OBJPACK-BODY_START = 1.
          OBJPACK-BODY_NUM = TAB_LINES.
          OBJPACK-DOC_TYPE = ATT_TYPE.
          OBJPACK-OBJ_NAME = 'ATTACHMENT'.
          OBJPACK-OBJ_DESCR = 'Payslip'.
          append OBJPACK.
    * Create receiver list refresh RECLIST.
          clear RECLIST.
          RECLIST-RECEIVER = itab-USRID_long.
          translate RECLIST-RECEIVER to lower case.
          RECLIST-REC_TYPE = 'U'.
          append RECLIST.
    * Send the document
    *SO_NEW_DOCUMENT_ATT_SEND_API1
          call function 'SO_DOCUMENT_SEND_API1'
            exporting
              DOCUMENT_DATA = DOCDATA
              PUT_IN_OUTBOX = 'X'
              COMMIT_WORK = 'X'
    * IMPORTING
    *   SENT_TO_ALL =
    *   NEW_OBJECT_ID =
            tables
              PACKING_LIST  = OBJPACK
              OBJECT_HEADER = OBJHEAD
              CONTENTS_BIN  = pdf
              CONTENTS_TXT  = OBJTXT
    *   CONTENTS_HEX =
    *   OBJECT_PARA =
    *   OBJECT_PARB =
              RECEIVERS = 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 NE 0.
            ITAB-MTEXT = 'Message Not Sent to : '.
          else.
            ITAB-MTEXT = 'Message Sent to : '.
          endif.
    *    else.
    *      ITAB-MTEXT = 'Message Not Sent to : '.
    *    endif.
        else.
          "SY-SUBRC Not = 0
          ITAB-MTEXT = 'Payroll data not found : '.
        endif.
        "end of SY-SUBRC = 0.
        modify ITAB.
      endloop. "end loop at ITAB
      sort ITAB by MTEXT PERNR.
      loop at ITAB.
        at new MTEXT.
          uline.
          write : / ITAB-MTEXT color 4 intensified on.
          write : / 'Emp. Code' color 2 intensified on,
                 12 'Emp. Name' color 2 intensified on,
                 54 'Email ID' color 2 intensified on.
        endat.
        write : / ITAB-PERNR, 12 ITAB-ENAME, 54 ITAB-USRID_LONG.
      endloop.

Maybe you are looking for

  • SCAC-50012 error while deploying a SOA composite

    I created a SOA compsoite using the guide at http://download.oracle.com/docs/cd/E14571_01/doc.1111/e14309/soa_api.htm but when I try to deploy the composite I'm getting SCAC-50012 error. I'm using JDeveloper 11.1.1.5 Following is the error I'm seeing

  • External SATA recommendations

    All, Can anyone recommend an external SATA solution for my Powermac G5? I have a card with external ports, but I need advice on the following: 1. Decent enclosure that will allow spindown of disks 2. Cables 3. Disks The other option would be for a NA

  • Restriction data entry for input ready query

    Dear All, I have an input ready query with two structures for rows and columns. However, I have set one of columns' structure's member as "data can be changed with planning functions", i'm able to enter data for that column. When i execute save funct

  • 11g Process Train: How to make the entire train's width or height larger

    I cannot see how to do this using -Property inspector -Skins and their appropriate selectors I can do this using plain html by setting the table's width, yet again this isn't possible thru ADF, and again, the CSS width attribute doesn't expand the ta

  • W520 Fn F5 Doesn't show Bluetooth Radio

    Hi, When I press Fn + F5, I see only 802.11 wireless radio and and bluetooth is not shown at all. I check both BIOS and and Device Manager and Bluetooth is activated. Any ideas? Thanks!  Solved! Go to Solution.