Submit data to an ABAP program from an offline form

Hello Forms experts,
the requirement goes like this: I have an internal table that will be passed to the form (via interface context) in the form the data will be changed by the user and the changes must be reflected in the internal table.-
I have to send back data from a table which data is modified inside a PDF form and send it back to an ABAP program for further process.
So far my development goes like this
- I have an ABAP program where I defined an internal table with the data to fill the table in the pdf form.
- I created an Interface that has one Import parameter (other than docparams) defined as the internal table that will have the data passed from this program to the form. this context interface object is bound to the form context and is put into the form layout by dragging and dropping from the data view. so the binding are done correctly.
- In my program I called the Function module that generates the form by using this function
    CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
        EXPORTING i_name = 'my_form_name'
       IMPORTING e_function_name = lv_function_name ....
this gives me the name of the function module associated to the form name I am passing by.
- I call the function module gave by the previous call
    CALL FUNCTION lv_function_name
        EXPORTING /1bcdwb/docparams = docparams
                           /1bcdwb/itable = itable
        IMPORTING
                          /1bcdwb/formoutput = formoutput
this will raise the pdf file preview where I can modify the data of some fields (not every field, due to key contrainst)
Now I have a problem, because in one hand the forums I read all talks about the Web Service using but to do it, I have to bind each table field to a field in the web service, loosing the bind from the internal table.
does the IMPORTING part in the CALL FUNCTION lv_function_name can have another parameter for the modified data in the form table so in my program i can get this object and continue working with the internal table ??
any suggestion, question, observation or comment is welcome.
in advance, thanks a lot.
EDIT:
Workaround:
download the pdf file into local computer. upload the file into the system and get the data from that pdf to update the data in the internal table... is that possible??
other option: Is there any chance to get the context attribute that represents the table from the interface context to the function module that called this form at the first place?
Edited by: Mauricio Poblete on Mar 23, 2010 10:17 PM

thanks everyone who reply this thread,
I tried several solutions: the standar one is to use the TRANSFORMATION method and modify the specifications in the ID object.
but the solution I took to do it was this one.
  DATA: lt_file_table TYPE filetable,
        lv_rc TYPE i,
        lv_filename TYPE string,
        lv_filelength TYPE i,
     lt_rawtab type STANDARD TABLE of ZSMSC_TAB.
        lt_rawtab TYPE TABLE OF char255.
  CALL METHOD cl_gui_frontend_services=>file_open_dialog
    CHANGING
      file_table              = lt_file_table
      rc                      = lv_rc
   USER_ACTION             =
   FILE_ENCODING           =
    EXCEPTIONS
      file_open_dialog_failed = 1
      cntl_error              = 2
      error_no_gui            = 3
      not_supported_by_gui    = 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.
  READ TABLE lt_file_table
       INTO lv_filename
       INDEX 1.
*lv_filename = p_pdf.
  cl_gui_frontend_services=>gui_upload(
    EXPORTING
      filename                = lv_filename
      filetype                = 'BIN'          "Binary
    IMPORTING
      filelength              = lv_filelength
    CHANGING
      data_tab                = lt_rawtab
    EXCEPTIONS
      file_open_error         = 1
      file_read_error         = 2
      no_batch                = 3
      gui_refuse_filetransfer = 4
      invalid_type            = 5
      no_authority            = 6
      unknown_error           = 7
      bad_data_format         = 8
      header_not_allowed      = 9
      separator_not_allowed   = 10
      header_too_long         = 11
      unknown_dp_error        = 12
      access_denied           = 13
      dp_out_of_memory        = 14
      disk_full               = 15
      dp_timeout              = 16
      not_supported_by_gui    = 17
      error_no_gui            = 18
      OTHERS                  = 19 ).
Get FP reference
  DATA: lo_fp TYPE REF TO if_fp VALUE IS INITIAL.
  lo_fp = cl_fp=>get_reference( ).
For handling exceptions
  DATA: lo_fpex TYPE REF TO cx_fp_runtime VALUE IS INITIAL.
  TRY.
  Create PDF Object using destination 'ADS' (<-- this is how it is
  defined in SM59)
      DATA: lo_pdfobj TYPE REF TO if_fp_pdf_object VALUE IS INITIAL,
            pdf_data TYPE xstring.
      CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'
    EXPORTING
      input_length       = lv_filelength
  FIRST_LINE         = 0
  LAST_LINE          = 0
   IMPORTING
     buffer             = pdf_data
    TABLES
      binary_tab         = lt_rawtab
EXCEPTIONS
  FAILED             = 1
  OTHERS             = 2
      IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      lo_pdfobj = lo_fp->create_pdf_object( connection = 'ADS' ).
  Set document
      lo_pdfobj->set_document(
        EXPORTING
          pdfdata = pdf_data ).
  Tell PDF object to extract data
      lo_pdfobj->set_extractdata( ).
  Execute the call to ADS
      lo_pdfobj->execute( ).
      DATA: xml_data TYPE xstring,
      lt_xml_data TYPE STANDARD TABLE OF xstring,
      t_return TYPE STANDARD TABLE OF bapiret2,
      t_per_info TYPE STANDARD TABLE OF smum_xmltb,
      lfs_per_info TYPE smum_xmltb,
      ls_zcrm_oppt_info  TYPE ZCRM_OPPT_INFO,
      lt_zcrm_oppt_info type ZCRMT_OPPT_INFO,
      tag_open TYPE TDSFFLAG.
      APPEND xml_data TO lt_xml_data.
      lo_pdfobj->get_data(
        IMPORTING
          formdata = xml_data ).
      CALL FUNCTION 'SMUM_XML_PARSE'
        EXPORTING
          xml_input = xml_data
        TABLES
          xml_table = t_per_info
          return    = t_return.
  LOOP AT t_per_info INTO lfs_per_info.
    CASE lfs_per_info-cname.
      WHEN 'OPPT_ID'.
        ls_zcrm_oppt_info-OPPT_ID = lfs_per_info-cvalue.
      WHEN 'EXPORT_STAMP'. "this is the last field in the record.
        ls_zcrm_oppt_info-EXPORT_STAMP = lfs_per_info-cvalue.
        append ls_zcrm_oppt_info to lt_zcrm_oppt_info.
        clear ls_zcrm_oppt_info.
        tag_open = ''.
      WHEN OTHERS.
    ENDCASE.
  ENDLOOP.
itable = lt_zcrm_oppt_info.
hope i solve another question.

Similar Messages

  • Call ABAP program from Unix script passing dynamic filename

    Hi,
    Does anyone know if it is possible to call an ABAP program from a Unix script passing a dynamic filename to the ABAP program?
    We are receiving a file from an external company and on receipt of the file want to call an ABAP program passing the filename.  The filename is made up of File ID, Date and Time which we need to read in the ABAP program.  We usually use Events to trigger a program which is fine when the filename if static however since this filename will be dynamic we cannot do this.  In addition we cannot just rename the file to a static name in the Unix script as we need to know the value of the date and time from the file ID in the ABAP program.  I can change the ABAP program to check our /in directory for a Filename that starts with the fixed File ID however I thought there must be a better way of doing this.  We want the external company to put this information in a file header record but they don't want to change the file contents.  Any ideas would be appreciated.
    Thanks,
    Sinead.

    You could follow the following method
    1.Let the external file reside in the SAP application layer in a defined path e.g. /usr/sap/tmp/interface/working/
    2.Write an ABAP program which will include the following steps:-
       i) read all files in the file path using function module EPS_GET_DIRECTORY_LISTING
      ii) Read the data from files existing in the directory using OPEN_DATASET statement
    iii) After the files have been read move the files to another directory e.g. /usr/sap/tmp/interface/backup/ or you can delete the file.
    3.Schedule this program to be executed depending on the frequency of the external file being generated.

  • Trigger a waiting ABAP program from a User Exit of CO01

    Hi all,
       We would like to launch a ABAP program from a User Exit (EXIT_SAPLCOZV_001) of CO01, this ABAP program has a special characteristic: using Function Module RFC_PING_AND_WAIT, so this program will be existing until terminating event coming.
        Our purpose is terminate CO01 normally before finishing of ABAP program. We don't know if it's possible?
        Actually:
           1. when we use SUBMIT ..., the process will stop CO01 (stop not normally) and then launch ABAP program. => This is not suitable for our purpose.
           2. when we use SUBMIT ... and RETURN, CO01 will wait for finishing of ABAP program => This is not suitable for our purpose too, because we wish CO01 terminated normally when ABAP program is still existing and waiting for its terminating event.
    Do you have a solution that is suitable for our purpose, could you please help us?
    (The context is below:
    Time:  Begin-->CO finished> ABAP finished-->    
       Launch CO01 --> Call User Exit --> Call ABAP program for waiting --> CO01 saved normally.
    > ABAP program still waiting ---> waiting for terminating event       
    Thanks a lot,
    Vinh Vo

    Hi,
         Try with the function module BP_EVENT_RAISE, it takes eventid, and eventparm as import parameters in the User exit.
    1) With Eventid, you create a background job of the ABAP program and schedule it. Eventparm can be the Production order number.
    2) So when ever the Event is triggered the FM gets triggered and which in turn run the ABAP program, so the foreground the CO01 transaction runs without waiting for the ABAP program to complete.
    Regards
    Bala Krishna

  • Removing or destroying an ABAP program from memory

    Hello!
    Is there a command to kill, unload, remove or destroy a previously called ABAP program from memory? Let me explain what I'm trying to do:
    I'm doing some WM developments and I use the function L_TO_CONFIRM to confirm transfer orders. This function belongs to function group L03B (program SAPLL03B) and eventually it makes external  calls to subroutines belonging to program SAPML03T.
    If my Z program calls this funcion, the SAPLL03B program is responsible for loading SAPML03T into memory and everything works fine. The loaded programs list (on the debugging menu) are like this:
    No     Program          Group with
    52     SAPLL03B       
    78     SAPML03T      52
    This is also what I get if testing L_TO_CONFIRM from SE37, where it also works.
    But I wanted to reuse some subroutines from SAPML03T on my Z program, so I call something like this:
    PERFORM set_quit_icon(sapml03t) ...
    This call happens before the function call, so SAPML03T gets loaded by my Z program first, and stays on the memory. The list of loaded programs then looks like this:
    No     Program          Grouped with
      1     ZWMO_023
    27     SAPML03T       1
    So after calling the external subroutine in SAPML03T, I do some more coding and finally call the function L_TO_CONFIRM. Inside this call, my list looks like:
    No     Program          Group
      1     ZWMO_023 => My Z program
    27     SAPML03T       1
    28     SAPLL03B       
    So SAPML03T is grouped with my Z program and not SAPLL03B as it would be if I hadn't called the external subroutine first.
    Now, the problem:
    Since SAPML03T and SAPLL03B apparently share some global data (at least global workarea/table LTAK), in a normal call (SAPML03T)LTAK gets filled by a select statement and instantly (and somewhat inexplicable from what I new until now) (SAPLL03B)LTAK also gets filled by the same data. Well, I've only seen stuff like this with field-symbols but this is not the case. I would bet this two workareas would always be in fact two different workareas, but during the straight function call they are not. They are the same (I wish I could find their pointer addresses (like C++ stuff) to prove they were the same, but I couldn't). But if I call the external subroutine first and SAPML03T gets loaded, then I do have two different LTAKs and that's where I have problems, because L_TO_CONFIRM was coded considering this single workarea thing and when I have two, it doesn't work.

    Yes, I tought about that.
    As a matter of fact, just last week we had another global memory issue in a costing user-exit and we tried solving it with a STARTING NEW TASK. This initialy solved our problem, but this command leads to the opening of a new gui session, and when running this cost calculation procedure in the background, a short dump COMMUNICATION FAILURE was raised, probably because of the lack of a SAP GUI link. We then used DESTINATION 'NONE' and this solved the problem (I think it also opens a new LUW).
    Also my WM problem is on a Z application that will be running under SAP Console, and I don't think opening a new GUI session with STARTING NEW TASK under SAP Console will work. I should try it anyway. - edited: I just remebered I did this a couple years go and it works
    I could use DESTINIATION 'NONE' in this case too, since the funcion module is RFC-enabled already. There are a few ways to solve the problem (which is already solved by the way). My main question still is about removing a whole program from SAP memory through ABAP commands.
    Thank you very much!

  • Calling ABAP Program from a Process Chain

    I am calling an ABAP Program from Process Chain by adding a Process Type u201CABAP Programu201D,
    My ABAP program writes lots of information using write statements.
    I looked in Process Chain Log; I do not see output from Write statement. I am pretty sure my write statements were executed. I also looked in SM37 job log. I do not see any more information.
    Where to see the output generated from ABAP.
    Thanks.

    Hi,
    First find out where your ABAP program the data written.You need to write it into and spool then only you can see it.
    Transaction SP01, you can use the FM 'GET_PRINT_PARAMETERS' in your abap program to write to spool.
    Thanks,
    Ravi

  • How to access the abap program from MS Excel?

    Hi ,
    How to access the abap program from MS Excel or MS access ?
    The abap program "z..."  has the below input and output attributes
    Input : Date,Index and file name with location (.htm or .xls)
    Output : htm or xls file downloaded at the above location.
    Please help me here.Do we haev to use BAPI and RFC?If yes,please tell me how to use them
    Regards
    Dinesh

    Maybe this could help you up -;)
    [Simple SE38 Emulator using Microsoft Excel|Simple SE38 Emulator using Microsoft Excel]
    Greetings,
    Blag.

  • How to submit a concurrent program from a custom form.

    I'm use Forms [32 Bit] Version 6.0.8.26.0 (Production) and Oracle Applications : 11.5.10.2.
    I need execute a concurrent program from a custom form.
    In the custom form I have a button and when that button is clicked I want to submit this cocurrent program. I am using the below code.
    fnd_profile.get('USER_ID', v_user_id);
    fnd_profile.get('RESP_ID', v_resp_id);
    fnd_profile.get('RESP_APPL_ID', v_resp_appl_id);
    fnd_global.apps_initialize(v_user_id,v_resp_id,v_resp_appl_id);
    vn_request_id := apps.fnd_request.submit_request (
    'XBOL',
    'CSUV_GL_STATEMENT_EXPORT'                                                            
    ,NULL
    ,NULL
    ,FALSE
    commit;
    But the concurrent program finished in error:
    "ORACLE error 6550 in FDPSTP
    Cause: FDPSTP failed due to ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'MAIN'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    The SQL statement being execute"
    The executable of the concurrent program is the next:
    PACKAGE CSUV_GL_STATEMENT_EXPORT_PK
    IS
    PROCEDURE Main (
    pouc_errbuf OUT VARCHAR2,
    poun_retcode OUT NUMBER,
    pinc_OWNER in varchar2,
    pinc_VESSEL in varchar2,
    pind_GL_DATE in varchar2,
    pinc_STATE_NUM in varchar2,
    pind_STATE_DATE in varchar2,
    pinc_EXCEL_LAYOUT in varchar2
    END CSUV_GL_STATEMENT_EXPORT_PK;
    And de value set of the all my concurrent program parameters is "240 Characters".
    I dont't understand why the concurrent program finished wrong.

    Hi,
    Cause: FDPSTP failed due to ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'MAIN'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignoredPlease refer to "Oracle Applications Developer's Guide" manual for the correct syntax and the number of arguments you need to pass to this API.
    Oracle Applications Developer's Guide
    http://download.oracle.com/docs/cd/B25516_18/current/acrobat/115devg.pdf
    Thanks,
    Hussein

  • How to translate the key words in ABAp program from lower case to upper cas

    How to translate the key words in ABAp program from lower case to upper case?

    Hi Kittu,
    You need to set the Pretty Printer settings to achieve key words in ABAP program from lower case to upper case.
    Utilities -> Settings -> Pretty Printer (tab) -> Select third radio button.
    Thats all.
    <b>Reward points if this helps.
    Manish</b>

  • Startrfc - SAP utility to invoke ABAP programs from External systems

    We have used the startrfc uitlity that comes along with the SAP Presentation CD. This is bundled with the SAP RFC SDK kit. The startrfc utility can be used to invoke ABAP programs from external systems or servers.
    When using the startrfc from the SAP server using the parameters
    startrfc -h 10.60.0.31 -s 01 -c 100 -u USERNAME -p PASS -F <Function Module> -E TPPARAM=\usr\sap\trans\bin\tp_domain_<SID>.PFL -T LIST,300,w=list.txt
    the desired results are achieved.
    However when using the same startrfc with the exact parameters from another server we get the message " Incorrect user or password". If we use the SAP GUI from this server to connect to the SAP server using the same username and password we are able to connect to the SAP system.
    Has anyone encountered any similar issues with Startrfc? Any suggestion will be appreciated.
    Thanks,
    ~Nilesh

    Hi NIlesh,
    Did you check that the password and user ID entered are in capita letters?
    Thanks and Regards,
    RK

  • Call an ABAP Program from Web Application designer

    Hi Gurus,
    I have an requirement in which I need to fetch an CSV file from the server and place the file into an internal table in R/3.I got the function module and wrote the program for this,but now I need to call this ABAP program from Web Application designer.
    To make it more explicit ,I need to call an ABAP Program /function module from the WAD.I am new to WAD Please help.
    Ankit

    Hi Ankit,
    take a look:
    /thread/725385 [original link is broken]
    WAD and ABAP
    How to call a ABAP or ABAP Class from the WEB
    /people/kai.wachter/blog/2008/03/11/how-to-write-own-items-in-bi-70-java-runtime
    Regards
    Andreas

  • Call ABAP program from a Feature - PE03

    We are in process of upgrading from 4.6 C to ECC 6.0.  One feature (CSTV1) will not activate because there is a limit on generated programs to under 10,000 ABAP statements.  SAP told me to call an ABAP program from the feature to reduce the number of ABAP statements in the generated program.  Has anyone created a feature that called an ABAP program?  I searched SAP help and I can't find any information about calling a ABAP program.
    Thanks in advance,
       Mark Ashabraner

    Hi Mark,
    You can try it this way.. Get the name of the ABAP Program generated by the feature from its attributes. it will be something like '1PAPA/FEAT020Z0106'...May be you can change this program ie  put a substantial chunk of this code in a subroutine in another program & call that with a PERFORM from this Program..
    ~Suresh

  • Call ABAP Program from outside SAP

    Hi all,
    How can I call an ABAP program from outside SAP, for example from a C++ executable, a .NET assembly or a JAVA package ? Are their "adapters" provided by SAP for this ?
    Angela

    Hi Angela,
    as mho already stated:
    For external connections to ABAP, the sap-proprietary "remote function call (RFC)" is a common way.
    SAP delivers an RFC-library for this, and for some development environments SAP even offers a connector on top of this library to make connectivity more easy (SAP Java Connector, SAP Business Connector, SAP Connector for Microsoft .Net). An RFC is always starting function modules in ABAP, not ABAP programs, and these function modules need the attribute "remote-enabled".
    (Remark: in the context of SAP NetWeaver Process Integration, SAP offers adapters for connectivity, also for ABAP systems.)
    For ABAP systems on basis code line 6.20 and above, the remote-enabled function modules can externally be used as web services.
    Information on RFC can be found in the SAP Help Portal http://www.help.sap.com, e.g. [RFC Call - Example Program|http://help.sap.com/saphelp_nw04/helpdata/en/3d/733760ccb411d2b4550060941936e3/frameset.htm]. A search in SDN provides links to the Help Portal as well.
    >
    Angela GALACY wrote:
    > For example, what if I develop an EJB inside NetWeaver, will I be able to access this from any J2EE client ?
    This part is beyond the ABAP question, and my guess is pretty simple: like on any other J2EE server.
    Regards, Boris

  • How to make column headers in table in PDF report appear bold while datas in table appear regular from c# windows forms with sql server2008 using iTextSharp

    Hi my name is vishal
    For past 10 days i have been breaking my head on how to make column headers in table appear bold while datas in table appear regular from c# windows forms with sql server2008 using iTextSharp.
    Given below is my code in c# on how i export datas from different tables in sql server to PDF report using iTextSharp:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.Data.SqlClient;
    using iTextSharp.text;
    using iTextSharp.text.pdf;
    using System.Diagnostics;
    using System.IO;
    namespace DRRS_CSharp
    public partial class frmPDF : Form
    public frmPDF()
    InitializeComponent();
    private void button1_Click(object sender, EventArgs e)
    Document doc = new Document(PageSize.A4.Rotate());
    var writer = PdfWriter.GetInstance(doc, new FileStream("AssignedDialyzer.pdf", FileMode.Create));
    doc.SetMargins(50, 50, 50, 50);
    doc.SetPageSize(new iTextSharp.text.Rectangle(iTextSharp.text.PageSize.LETTER.Width, iTextSharp.text.PageSize.LETTER.Height));
    doc.Open();
    PdfPTable table = new PdfPTable(6);
    table.TotalWidth =530f;
    table.LockedWidth = true;
    PdfPCell cell = new PdfPCell(new Phrase("Institute/Hospital:AIIMS,NEW DELHI", FontFactory.GetFont("Arial", 14, iTextSharp.text.Font.BOLD, BaseColor.BLACK)));
    cell.Colspan = 6;
    cell.HorizontalAlignment = 0;
    table.AddCell(cell);
    Paragraph para=new Paragraph("DCS Clinical Record-Assigned Dialyzer",FontFactory.GetFont("Arial",16,iTextSharp.text.Font.BOLD,BaseColor.BLACK));
    para.Alignment = Element.ALIGN_CENTER;
    iTextSharp.text.Image png = iTextSharp.text.Image.GetInstance("logo5.png");
    png.ScaleToFit(105f, 105f);
    png.Alignment = Element.ALIGN_RIGHT;
    SqlConnection conn = new SqlConnection("Data Source=NPD-4\\SQLEXPRESS;Initial Catalog=DRRS;Integrated Security=true");
    SqlCommand cmd = new SqlCommand("Select d.dialyserID,r.errorCode,r.dialysis_date,pn.patient_first_name,pn.patient_last_name,d.manufacturer,d.dialyzer_size,r.start_date,r.end_date,d.packed_volume,r.bundle_vol,r.disinfectant,t.Technician_first_name,t.Technician_last_name from dialyser d,patient_name pn,reprocessor r,Techniciandetail t where pn.patient_id=d.patient_id and r.dialyzer_id=d.dialyserID and t.technician_id=r.technician_id and d.deleted_status=0 and d.closed_status=0 and pn.status=1 and r.errorCode<106 and r.reprocessor_id in (Select max(reprocessor_id) from reprocessor where dialyzer_id=d.dialyserID) order by pn.patient_first_name,pn.patient_last_name", conn);
    conn.Open();
    SqlDataReader dr;
    dr = cmd.ExecuteReader();
    table.AddCell("Reprocessing Date");
    table.AddCell("Patient Name");
    table.AddCell("Dialyzer(Manufacturer,Size)");
    table.AddCell("No.of Reuse");
    table.AddCell("Verification");
    table.AddCell("DialyzerID");
    while (dr.Read())
    table.AddCell(dr[2].ToString());
    table.AddCell(dr[3].ToString() +"_"+ dr[4].ToString());
    table.AddCell(dr[5].ToString() + "-" + dr[6].ToString());
    table.AddCell("@count".ToString());
    table.AddCell(dr[12].ToString() + "-" + dr[13].ToString());
    table.AddCell(dr[0].ToString());
    dr.Close();
    table.SpacingBefore = 15f;
    doc.Add(para);
    doc.Add(png);
    doc.Add(table);
    doc.Close();
    System.Diagnostics.Process.Start("AssignedDialyzer.pdf");
    if (MessageBox.Show("Do you want to save changes to AssignedDialyzer.pdf before closing?", "DRRS", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation) == DialogResult.Yes)
    var writer2 = PdfWriter.GetInstance(doc, new FileStream("AssignedDialyzer.pdf", FileMode.Create));
    else if (MessageBox.Show("Do you want to save changes to AssignedDialyzer.pdf before closing?", "DRRS", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation) == DialogResult.No)
    this.Close();
    The above code executes well with no problem at all!
    As you can see the file to which i create and save and open my pdf report is
    AssignedDialyzer.pdf.
    The column headers of table in pdf report from c# windows forms using iTextSharp are
    "Reprocessing Date","Patient Name","Dialyzer(Manufacturer,Size)","No.of Reuse","Verification" and
    "DialyzerID".
    However the problem i am facing is after execution and opening of document is my
    column headers in table in pdf report from
    c# and datas in it all appear in bold.
    I have browsed through net regarding to solve this problem but with no success.
    What i want is my pdf report from c# should be similar to following format which i was able to accomplish in vb6,adodb with MS access using iTextSharp.:
    Given below is report which i have achieved from vb6,adodb with MS access using iTextSharp
    I know that there has to be another way to solve my problem.I have browsed many articles in net regarding exporting sql datas to above format but with no success!
    Is there is any another way to solve to my problem on exporting sql datas from c# windows forms using iTextSharp to above format given in the picture/image above?!
    If so Then Can anyone tell me what modifications must i do in my c# code given above so that my pdf report from c# windows forms using iTextSharp will look similar to image/picture(pdf report) which i was able to accomplish from
    vb6,adodb with ms access using iTextSharp?
    I have approached Sound Forge.Net for help but with no success.
    I hope anyone/someone truly understands what i am trying to ask!
    I know i have to do lot of modifications in my c# code to achieve this level of perfection but i dont know how to do it.
    Can anyone help me please! Any help/guidance in solving this problem would be greatly appreciated.
    I hope i get a reply in terms of solving this problem.
    vishal

    Hi,
    About iTextSharp component issue , I think this case is off-topic in here.
    I suggest you consulting to compenent provider.
    http://sourceforge.net/projects/itextsharp/
    Regards,
    Marvin
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • How to get data in ABAP program from multicube in external BW system

    Hi friends,
         I want to get data from one multicube which resides in an external BW system, in my ABAP program internal table. Is there any SAP standard RFC / BAPI for this or is there any other way around or I have to design my own program to get the data ?
        To make my requirement clearer, my ABAP program is in one BW box and the above mentioned multicube in another BW box. I want to get data from the multicube into my program.
        Any help is appreciated with points.

    Look at the following FM; you may find the FM RSDRI_INFOPROV_READ_RFC useful.
    Call the FM in your program and read data and update.
    RSAD_INFOCUBE_READ_REMOTE_DATA
    RSDRI_INFOPROV_READ_RFC
    Ravi Thothadri

  • Error while calling ABAP program from Data Services

    Hi All,
    We have a ABAP program which accepts two parameters 1] a date 2] a string of comma separated ARTICLE numbers .
    We have used a ABAB transform in ABAP dataflow which refers this ABAP program.
    If I pass a string of 6 articles as second parameter the job executes successfully
    But if i pass 9 articles as follows
    $GV_ITEM_VALUES='3564785,1234789,1234509,1987654,1234567,2345678,3456789,4567890,5456759';
    i get the following error
    ABAP program syntax error: <Literals that take up more than one line are not permitted>.
    The error occurs immediately after ABAP dataflow starts, ie even before the ABAP job gets submitted to ECC
    I am using BODS 4.2 . The datatype of $GV_ITEM_VALUES is varchar(1000).
    The ABAP program that gets generated by the DS job has the following datatype for this parameter
    PARAMETER $PARAM2(1000) TYPE C
    Is there a different way to pass string characters to ABAP transform in data services?
    I have attached the screen shot of trace log and error
    Regards,
    Sharayu

    Hi Sharayu,
    The error your getting is because the  literals exceeds more than 72 characters.
    It seems that the length of the string is exceeding more than 72 character.
    Can you check the following in ECC GUI
    Go to Transaction SE38=>Utilities=>Settings=>ABAP Editor=>Editor=> Downwards -Comp.Line  Length(72).
    The checkbox which defines length 72 must be clicked so the error is coming. Can you uncheck the checkbox and then try passing the parameter $GV_ITEM_VALUES using the BODS job
    Regards
    Arun Sasi

Maybe you are looking for