Convert Data date Type

I wanna convert a date from format yyyy/mm/dd to dd/mm/yyyy
and make this code :
Date v_fd = wdContext.currentContextElement().getV_fechadesde();
     Date v_fh = wdContext.currentContextElement().getV_fechahasta();
    String v_fechadesde = v_fd.toString();
     String v_fechahasta = v_fd.toString();
     v_fechadesde = v_fechadesde.substring(8,10) + '-' + v_fechadesde.substring(5,7) + '-' + v_fechadesde.substring(0,4) ;          
     v_fechahasta = v_fechadesde.substring(8,10) + '-' + v_fechahasta.substring(5,7) + '-' + v_fechahasta.substring(0,4) ;
     SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
     java.util.Date d;
     try {
     d = dateFormat.parse(v_fechadesde);
     dateFormat.applyPattern("dd/MM/yyyy");
     v_fechadesde = dateFormat.format(d);
     } catch (Exception e) {
     e.printStackTrace();
     java.sql.Date date = java.sql.Date.valueOf(v_fechadesde);
     wdContext.currentZhr_Rfc_Pce_Get_Object_InputElement().setI_Begda(date);
     wdContext.currentZhr_Rfc_Pce_Get_Object_InputElement().setI_Endda(date);
example
enter
01-06-2007
result
0006-11-28
Any idea please ?

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class MainClass {
     public static void main(String[] args) {
          String dateIn = "01-06-2007";
          String dateIn2 = "1/6/2007";
          try {
               System.out.println("Test Correct Input:"+convertDate(dateIn));
          } catch (Exception e) {
               System.out.println(e.getMessage());
          try {
               System.out.print("Test Wrong Input:");
               System.out.println(convertDate(dateIn2));
          } catch (Exception e) {
               System.out.println(e.getMessage());
      * @param inDate
      * @return
      * @throws Exception
     public static String convertDate(String inDate) throws Exception {
          String inPattern = "dd-mm-yyyy";
          String outPattern = "yyyy-mm-dd";
          String dateOut = null ;
          SimpleDateFormat dateFormatter =  new SimpleDateFormat(inPattern);
          Date date = null;
          try {
               date = dateFormatter.parse(inDate);
          } catch (ParseException e) {
               throw new Exception("Wrong Format");
          SimpleDateFormat formatter = new SimpleDateFormat(outPattern);
          dateOut = formatter.format(date);
          return dateOut;
If the format is incorrect i.e. not in inPattern : dateFormatter.parse(inDate); throws exception.
Go via links i given in first post. You can have more information on date formats there.
Regards,
Ashwani Kr Sharma

Similar Messages

  • Converting data volume type from LINK to FILE on a Linux OS

    Dear experts,
    I am currently running MaxDB 7.7.04.29 on Red Hat Linux 5.1.  The file types for the data volumes were
    initially configured as type LINK and correspondingly made links at the OS level via "ln -s" command. 
    Now (at the OS level) we have replaced the link with the actual file and brought up MaxDB.  The system
    comes up fine without problems but I have a two part question:
    1) What are the ramifications if MaxDB thinks the data volumes are links when in reality they are files.
        (might we encounter a performance problem).
    2) In MaxDB, what is the best way to convert a data volume from type LINK to type FILE?
    Your feedback is greatly appreciated.
    --Erick

    > 1) What are the ramifications if MaxDB thinks the data volumes are links when in reality they are files.
    >     (might we encounter a performance problem).
    Never saw any problems, but since I don't have a linux system at hand I cannot tell you for sure.
    Maybe it's about how to open a file with special options like DirectIO if it's a link...
    > 2) In MaxDB, what is the best way to convert a data volume from type LINK to type FILE?
    There's no 'converting'.
    Shutdown the database to offline.
    Now logon to dbmcli and list all parameters there are.
    You'll get three to four parameters per data volume, one of them called
    DATA_VOLUME_TYPE_0001
    where 0001 is the number of the volume.
    open a parameter session and change the value for the parameters from 'L' to 'F':
    param_startsession
    param_put DATA_VOLUME_TYPE_0001 F
    param_put DATA_VOLUME_TYPE_0002 F
    param_put DATA_VOLUME_TYPE_0003 F
    param_checkall
    param_commitsession
    After that the volumes are recognizes as files.
    regards,
    Lars
    Edited by: Lars Breddemann on Apr 28, 2009 2:53 AM

  • How to convert Oracle data types to ABAP types.

    Hi,
    I have this oracle table table:
    Type of col.
    Char(6)
    Number
    Number
    Number
    Number
    Date
    I dont know how to convert column of number to abap types. I use exec sgl syntax and I try to insert value to abap structure. But structure <dyn_wa> is wrong.
      EXEC SQL PERFORMING loop_output.
        SELECT *
            INTO   :<dyn_wa>
            FROM   BIND_VAT_CB_SUM_VIEW@DTRTST1
      ENDEXEC.
    ENDFORM.                    "get_data
    Thanks

    HI,
    REPORT demo_native_sql.
    DATA: BEGIN OF wa,
            connid   TYPE spfli-connid,
            cityfrom TYPE spfli-cityfrom,
            cityto   TYPE spfli-cityto,
          END OF wa.
    DATA c1 TYPE spfli-carrid VALUE 'LH'.
    EXEC SQL PERFORMING loop_output.
      SELECT connid, cityfrom, cityto
      INTO   :wa
      FROM   spfli
      WHERE  carrid = :c1
    ENDEXEC.
    FORM loop_output.
      WRITE: / wa-connid, wa-cityfrom, wa-cityto.
    ENDFORM.
    See the below SAP link for more info
    http://help.sap.com/saphelp_nw2004s/helpdata/en/fc/eb3b8b358411d1829f0000e829fbfe/content.htm
    Thanks
    Sudheer

  • How to convert high_value to date data type on dba_tab_partitions

    I just want to query and get the max date available on the dba_tab_partitions for the high_value field.
    high_value data type is LONG it has the value for Partition bound value expression.
    For example on my partition table the expression is like TO_DATE(' 2012-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')
    I just want to convert the high_value to date data type.

    we had the same problem and we used a function for that purpose. I am not going to share our function here but Tom has all the gear you need : )
    http://asktom.oracle.com/pls/asktom/f?p=100:11:::::P11_QUESTION_ID:665224430110

  • Converting premitive data types into strings

    Hello everybody,
    I have a small doubt. Is it possible to convert all data types like int, boolean etc to strings. I know it is possible to convert them individually. But I would like to have it a common method to convert them all. Because I am reading the whole line, so it is taking as strings. I am unable to read their original data types, all are reading as strings.
    Can anybody tell me how to solve this problem?
    Thank you in advance,
    Kashi.

    Hi all,
    Thanx for your answers. But as I told you before I don't know the exact data type of those. Because I am reading whole file by using DataInputStream's readLine() method. It returns the whole line as String. If there are any integer or boolean etc, it converts them as strings. So I could not read the exact data type of them.
    for example:
    int a = 10;
    boolean b = true;
    String str = "The Values are" + a + b;
    this code is in one file. If I read this file from another file, the line
    String str = "The Values are" + a + b;
    reads as a string, but I couldn�t get the 'a' as ineger and 'b' as boolean. it gives they are of strings.
    Thanx,
    Kashi.

  • How can i convert the date from M to MM ?

    Dear Guru ,
    I need to upload my list to SAP table , and in the list , we are using YYYY/M/D format ( Eg. 2010/5/20 , 2010/10/1 ) .
    And now i want to convert all date format to YYYY/MM/DD , Is it possibile to do that ?
    Here is my code , but it doesn't work . It returned "2009//3//5" format .
    data: ld_date_int type datum.
    data : test(10) type c.
    test = '2009/3/5' .
    ld_date_int = test .
    WRITE : SY-SUBRC , LD_DATE_int .
    Does SAP provide a standard function can convert the date format ?
    Thanks .
    Best Regards,
    Carlos Zhang

    Hi Dear
    You can try in this way :::
    data: ld_date_int type string.
    DATA : ld_string TYPE string.
    data : test(10) type c,
           ld_res1(4) TYPE c,
           ld_res2(2) TYPE c,
           ld_res3(2) TYPE c.
    DATA : ll_res2 TYPE i,
           ll_res3 TYPE i.
    test = '2009/03/5' .
    ld_date_int = test .
    ld_string = strlen( ld_date_int ).
    CASE ld_string.
      WHEN 10.
       WRITE : SY-SUBRC , LD_DATE_int.
      WHEN OTHERS.
        SPLIT ld_date_int at '/' INTO ld_res1 ld_res2 ld_res3 in CHARACTER MODE.
        ll_res2 = strlen( ld_res2 ).
        ll_res3 = strlen( ld_res3 ).
        IF NOT ll_res2 eq 2 and not ll_res3 eq 2.
          CONCATENATE: '0' ld_res2 INTO ld_res2.
          CONCATENATE: '0' ld_res3 INTO ld_res3.
          CONCATENATE ld_res1 '/' ld_res2 '/' ld_res3 INTO ld_date_int.
          WRITE : SY-SUBRC , LD_DATE_int.
        ENDIF.
        IF ll_res2 eq 2 and not ll_res3 eq 2.
          CONCATENATE '0' ld_res3 INTO ld_res3.
          CONCATENATE ld_res1 '/' ld_res2 '/' ld_res3 INTO ld_date_int.
          WRITE : SY-SUBRC , LD_DATE_int.
        ENDIF.
        IF NOT ll_res2 eq 2 and ll_res3 eq 2.
           CONCATENATE: '0' ld_res2 INTO ld_res2.
            CONCATENATE ld_res1 '/' ld_res2 '/' ld_res3 INTO ld_date_int.
             WRITE : SY-SUBRC , LD_DATE_int.
        ENDIF.
    ENDCASE.

  • "Date / Date Time" type parameters in crystal reports 2008

    i am using parameters in crystal report to select records. one of the parameters is "From Date" of type Date Time.
    i mapped this parameter to a field "DateIn" of type smalldatetime in my sql table.
    Now, when i open the report it asks for "From Date" but b y default it sets the time to current time so i have to change it to 00:00:00 manually. i want it to show 00:00:00 by default. which means i don't want time here.
    For this if i select the datatype of parameter "From Date" as Date only then i am not able to map it to the "DateIn" field of the sql table.
    Please help me out of this.
    Edited by: rohit0825 on Jun 2, 2010 2:25 PM

    >
    Deepravs wrote:
    > Hi Rohit,
    >
    > Change the Parameter to Date Datatype and use this formula in the "Record Selection Formula " (Report Tab -> Selection Formulas -> Record)
    >
    > = CDateTime ({?From Date})
    >
    > Though the parameter is date datatype it converts to datetime datatype amd maps to the desired column.
    >
    >
    > Thanks,
    Great !!!
    this is working.
    i found another way, i changed the datatype of parameter to Date and click ok and everything was good, it doesn't require any conversion to date time.
    Thank You so much. All Points You.
    Edited by: rohit0825 on Jun 3, 2010 10:47 AM

  • Converting binary data into pdf and placing into application server

    Hi Friends,
    I am able to get PO details in binary format and then using GUI_DOWNLOAD  with file type with 'bin' and file name with 'sample.pdf' extension , got  PO in pdf  format.
    But i need to get with pdf extension in application server without using GUI_DOWNLOAD.
    Is there any functional modules for it?
    With Warm Regards,
    Madhu!!!

    Hi Madhu,
    Check this code.
    *& Report  ZSPOOLTOPDF                                                 *
    *& Converts spool request into PDF document and emails it to           *
    *& recipicant.                                                         *
    *& Execution                                                           *
    *& This program must be run as a background job in-order for the write *
    *& commands to create a Spool request rather than be displayed on      *
    *& screen                                                              *
    REPORT  zspooltopdf.
    PARAMETER: p_email1 LIKE somlreci1-receiver
                                        DEFAULT '[email protected]',
               p_sender LIKE somlreci1-receiver
                                        DEFAULT '[email protected]',
               p_delspl  AS CHECKBOX.
    *DATA DECLARATION
    DATA: gd_recsize TYPE i.
    Spool IDs
    TYPES: BEGIN OF t_tbtcp.
            INCLUDE STRUCTURE tbtcp.
    TYPES: END OF t_tbtcp.
    DATA: it_tbtcp TYPE STANDARD TABLE OF t_tbtcp INITIAL SIZE 0,
          wa_tbtcp TYPE t_tbtcp.
    Job Runtime Parameters
    DATA: gd_eventid LIKE tbtcm-eventid,
          gd_eventparm LIKE tbtcm-eventparm,
          gd_external_program_active LIKE tbtcm-xpgactive,
          gd_jobcount LIKE tbtcm-jobcount,
          gd_jobname LIKE tbtcm-jobname,
          gd_stepcount LIKE tbtcm-stepcount,
          gd_error    TYPE sy-subrc,
          gd_reciever TYPE sy-subrc.
    DATA:  w_recsize TYPE i.
    DATA: gd_subject   LIKE sodocchgi1-obj_descr,
          it_mess_bod LIKE solisti1 OCCURS 0 WITH HEADER LINE,
          it_mess_att LIKE solisti1 OCCURS 0 WITH HEADER LINE,
          gd_sender_type     LIKE soextreci1-adr_typ,
          gd_attachment_desc TYPE so_obj_nam,
          gd_attachment_name TYPE so_obj_des.
    Spool to PDF conversions
    DATA: gd_spool_nr LIKE tsp01-rqident,
          gd_destination LIKE rlgrap-filename,
          gd_bytecount LIKE tst01-dsize,
          gd_buffer TYPE string.
    Binary store for PDF
    DATA: BEGIN OF it_pdf_output OCCURS 0.
            INCLUDE STRUCTURE tline.
    DATA: END OF it_pdf_output.
    CONSTANTS: c_dev LIKE  sy-sysid VALUE 'DEV',
               c_no(1)     TYPE c   VALUE ' ',
               c_device(4) TYPE c   VALUE 'LOCL'.
    *START-OF-SELECTION.
    START-OF-SELECTION.
    Write statement to represent report output. Spool request is created
    if write statement is executed in background. This could also be an
    ALV grid which would be converted to PDF without any extra effort
      WRITE 'Hello World'.
      new-page.
      commit work.
      new-page print off.
      IF sy-batch EQ 'X'.
        PERFORM get_job_details.
        PERFORM obtain_spool_id.
    Alternative way could be to submit another program and store spool
    id into memory, will be stored in sy-spono.
    *submit ZSPOOLTOPDF2
           to sap-spool
           spool parameters   %_print
           archive parameters %_print
           without spool dynpro
           and return.
    Get spool id from program called above
    IMPORT w_spool_nr FROM MEMORY ID 'SPOOLTOPDF'.
        PERFORM convert_spool_to_pdf.
        PERFORM process_email.
        if p_delspl EQ 'X'.
          PERFORM delete_spool.
        endif.
        IF sy-sysid = c_dev.
          wait up to 5 seconds.
          SUBMIT rsconn01 WITH mode   = 'INT'
                          WITH output = 'X'
                          AND RETURN.
        ENDIF.
      ELSE.
        SKIP.
        WRITE:/ 'Program must be executed in background in-order for spool',
                'request to be created.'.
      ENDIF.
          FORM obtain_spool_id                                          *
    FORM obtain_spool_id.
      CHECK NOT ( gd_jobname IS INITIAL ).
      CHECK NOT ( gd_jobcount IS INITIAL ).
      SELECT * FROM  tbtcp
                     INTO TABLE it_tbtcp
                     WHERE      jobname     = gd_jobname
                     AND        jobcount    = gd_jobcount
                     AND        stepcount   = gd_stepcount
                     AND        listident   <> '0000000000'
                     ORDER BY   jobname
                                jobcount
                                stepcount.
      READ TABLE it_tbtcp INTO wa_tbtcp INDEX 1.
      IF sy-subrc = 0.
        message s004(zdd) with gd_spool_nr.
        gd_spool_nr = wa_tbtcp-listident.
        MESSAGE s004(zdd) WITH gd_spool_nr.
      ELSE.
        MESSAGE s005(zdd).
      ENDIF.
    ENDFORM.
          FORM get_job_details                                          *
    FORM get_job_details.
    Get current job details
      CALL FUNCTION 'GET_JOB_RUNTIME_INFO'
           IMPORTING
                eventid                 = gd_eventid
                eventparm               = gd_eventparm
                external_program_active = gd_external_program_active
                jobcount                = gd_jobcount
                jobname                 = gd_jobname
                stepcount               = gd_stepcount
           EXCEPTIONS
                no_runtime_info         = 1
                OTHERS                  = 2.
    ENDFORM.
          FORM convert_spool_to_pdf                                     *
    FORM convert_spool_to_pdf.
      CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
           EXPORTING
                src_spoolid              = gd_spool_nr
                no_dialog                = c_no
                dst_device               = c_device
           IMPORTING
                pdf_bytecount            = gd_bytecount
           TABLES
                pdf                      = it_pdf_output
           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.
      CHECK sy-subrc = 0.
    Transfer the 132-long strings to 255-long strings
      LOOP AT it_pdf_output.
        TRANSLATE it_pdf_output USING ' ~'.
        CONCATENATE gd_buffer it_pdf_output 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.
    ENDFORM.
          FORM process_email                                            *
    FORM process_email.
      DESCRIBE TABLE it_mess_att LINES gd_recsize.
      CHECK gd_recsize > 0.
      PERFORM send_email USING p_email1.
    perform send_email using p_email2.
    ENDFORM.
          FORM send_email                                               *
    -->  p_email                                                       *
    FORM send_email USING p_email.
      CHECK NOT ( p_email IS INITIAL ).
      REFRESH it_mess_bod.
    Default subject matter
      gd_subject         = 'Subject'.
      gd_attachment_desc = 'Attachname'.
    CONCATENATE 'attach_name' ' ' INTO gd_attachment_name.
      it_mess_bod        = 'Message Body text, line 1'.
      APPEND it_mess_bod.
      it_mess_bod        = 'Message Body text, line 2...'.
      APPEND it_mess_bod.
    If no sender specified - default blank
      IF p_sender EQ space.
        gd_sender_type  = space.
      ELSE.
        gd_sender_type  = 'INT'.
      ENDIF.
    Send file by email as .xls speadsheet
      PERFORM send_file_as_email_attachment
                                   tables it_mess_bod
                                          it_mess_att
                                    using p_email
                                          'Example .xls documnet attachment'
                                          'PDF'
                                          gd_attachment_name
                                          gd_attachment_desc
                                          p_sender
                                          gd_sender_type
                                 changing gd_error
                                          gd_reciever.
    ENDFORM.
          FORM delete_spool                                             *
    FORM delete_spool.
      DATA: ld_spool_nr TYPE tsp01_sp0r-rqid_char.
      ld_spool_nr = gd_spool_nr.
      CHECK p_delspl <> c_no.
      CALL FUNCTION 'RSPO_R_RDELETE_SPOOLREQ'
           EXPORTING
                spoolid = ld_spool_nr.
    ENDFORM.
    *&      Form  SEND_FILE_AS_EMAIL_ATTACHMENT
          Send email
    FORM send_file_as_email_attachment tables it_message
                                              it_attach
                                        using p_email
                                              p_mtitle
                                              p_format
                                              p_filename
                                              p_attdescription
                                              p_sender_address
                                              p_sender_addres_type
                                     changing p_error
                                              p_reciever.
      DATA: ld_error    TYPE sy-subrc,
            ld_reciever TYPE sy-subrc,
            ld_mtitle LIKE sodocchgi1-obj_descr,
            ld_email LIKE  somlreci1-receiver,
            ld_format TYPE  so_obj_tp ,
            ld_attdescription TYPE  so_obj_nam ,
            ld_attfilename TYPE  so_obj_des ,
            ld_sender_address LIKE  soextreci1-receiver,
            ld_sender_address_type LIKE  soextreci1-adr_typ,
            ld_receiver LIKE  sy-subrc.
    data:   t_packing_list like sopcklsti1 occurs 0 with header line,
            t_contents like solisti1 occurs 0 with header line,
            t_receivers like somlreci1 occurs 0 with header line,
            t_attachment like solisti1 occurs 0 with header line,
            t_object_header like solisti1 occurs 0 with header line,
            w_cnt type i,
            w_sent_all(1) type c,
            w_doc_data like sodocchgi1.
      ld_email   = p_email.
      ld_mtitle = p_mtitle.
      ld_format              = p_format.
      ld_attdescription      = p_attdescription.
      ld_attfilename         = p_filename.
      ld_sender_address      = p_sender_address.
      ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
      w_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
      w_doc_data-obj_langu = sy-langu.
      w_doc_data-obj_name  = 'SAPRPT'.
      w_doc_data-obj_descr = ld_mtitle .
      w_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
      CLEAR w_doc_data.
      READ TABLE it_attach INDEX w_cnt.
      w_doc_data-doc_size =
         ( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
      w_doc_data-obj_langu  = sy-langu.
      w_doc_data-obj_name   = 'SAPRPT'.
      w_doc_data-obj_descr  = ld_mtitle.
      w_doc_data-sensitivty = 'F'.
      CLEAR t_attachment.
      REFRESH t_attachment.
      t_attachment[] = it_attach[].
    Describe the body of the message
      CLEAR t_packing_list.
      REFRESH t_packing_list.
      t_packing_list-transf_bin = space.
      t_packing_list-head_start = 1.
      t_packing_list-head_num = 0.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE it_message LINES t_packing_list-body_num.
      t_packing_list-doc_type = 'RAW'.
      APPEND t_packing_list.
    Create attachment notification
      t_packing_list-transf_bin = 'X'.
      t_packing_list-head_start = 1.
      t_packing_list-head_num   = 1.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
      t_packing_list-doc_type   =  ld_format.
      t_packing_list-obj_descr  =  ld_attdescription.
      t_packing_list-obj_name   =  ld_attfilename.
      t_packing_list-doc_size   =  t_packing_list-body_num * 255.
      APPEND t_packing_list.
    Add the recipients email address
      CLEAR t_receivers.
      REFRESH t_receivers.
      t_receivers-receiver = ld_email.
      t_receivers-rec_type = 'U'.
      t_receivers-com_type = 'INT'.
      t_receivers-notif_del = 'X'.
      t_receivers-notif_ndel = 'X'.
      APPEND t_receivers.
      CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
           EXPORTING
                document_data              = w_doc_data
                put_in_outbox              = 'X'
                sender_address             = ld_sender_address
                sender_address_type        = ld_sender_address_type
                commit_work                = 'X'
           IMPORTING
                sent_to_all                = w_sent_all
           TABLES
                packing_list               = t_packing_list
                contents_bin               = t_attachment
                contents_txt               = it_message
                receivers                  = t_receivers
           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.
    Populate zerror return code
      ld_error = sy-subrc.
    Populate zreceiver return code
      LOOP AT t_receivers.
        ld_receiver = t_receivers-retrn_code.
      ENDLOOP.
    ENDFORM.
    Hope this resolves your query.
    <b>Reward all the helpful answers.</b>
    Regards

  • How to convert the date in mm/dd/yyyy.

    hi,
    I am working with tcurr tables when i go in se16 and see the table i see the field gdatu in '79929474'.
    if i double click on the that particular row the format of gdatu changes to '25.05.2007'.
    I am working on an extract and the date is coming in  '79929474'. I need to convert it to mm/dd/yyyy format.
    I need ur help and guidence.
    Kamlesh

    Hi Kamlesh
    Try to execute the program and see the result.The same logic can be used for solving your date issue.
    TABLES :tcurr.
    TYPES:BEGIN OF g_ty_tcurr.
            INCLUDE STRUCTURE tcurr.
    TYPES: date TYPE sy-datum.
    TYPES: END OF g_ty_tcurr.
    DATA : it_tcurr TYPE TABLE OF g_ty_tcurr,
           wa_tcurr LIKE LINE OF  it_tcurr.
    SELECT *  FROM tcurr INTO CORRESPONDING FIELDS OF TABLE it_tcurr.
    LOOP AT  it_tcurr INTO  wa_tcurr.
      DATA:wrk_date(10) TYPE c.
      CALL FUNCTION 'CONVERSION_EXIT_INVDT_OUTPUT'
        EXPORTING
          input  = wa_tcurr-gdatu
        IMPORTING
          output = wrk_date.
      CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
        EXPORTING
          date_external            = wrk_date
        IMPORTING
          date_internal            = wrk_date
        EXCEPTIONS
          date_external_is_invalid = 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.
      DATA: wrk_date1 TYPE sy-datum.
      CONCATENATE wrk_date4(2) wrk_date6(2) wrk_date+0(4) INTO wrk_date1.  " to get teh date in mmddyyyy format.
      wa_tcurr-date = wrk_date1.
      MODIFY it_tcurr FROM wa_tcurr TRANSPORTING date.
    ENDLOOP.

  • Which  Function Module is used for converting the DATE in BDC

    HI,
    Which  Function Module is used for converting the DATE Format in BDC for Uploading purpose please help me.

    data : date like sy-datum.
    data : odate(10) type c.
    date = sy-datum.        " in format YYYYMMDD
    CALL FUNCTION 'CONVERSION_EXIT_PDATE_OUTPUT'
      EXPORTING
       input         = date
    IMPORTING
       OUTPUT        = odate         .
    write:/ odate.  "in ur format '.
    1.
    In ur itab make a field for date as 10 characters and use this Fm to store the date .
    2. Pass the date as the charcter field to the screen and now check .

  • How to convert raw data into pdf ?

    Hi everyone,
    I have a requirement where I have to print the document present in application server.
    I used below code to do this
    * Open the file in binary mode
       OPEN DATASET gv_filepath FOR INPUT IN TEXT MODE ENCODING DEFAULT IGNORING CONVERSION ERRORS.
       DO.
         TRY.
    * Since the file is opened in Binary mode, the entire contents of the
    * file is read in one go!
             READ DATASET gv_filepath INTO gv_filedata.
             IF sy-subrc <> 0.
               EXIT.
             ENDIF.
           CATCH cx_sy_conversion_codepage.
         ENDTRY.
         APPEND gv_filedata TO gt_file_table.
         CLEAR gv_filedata.
       ENDDO.
       CLOSE DATASET gv_filepath.
    DESCRIBE TABLE gt_file_table LINES lv_lines.
      lv_pages = lv_lines.
      lv_dest = 'LP01'.
      lv_spoolname = 'LOCW'.
      CALL FUNCTION 'RSPO_SX_OUTPUT_TEXTDATA'
        EXPORTING
    *     NAME           = lv_spoolname
          DEST           = lv_dest
          ROWS           = lv_lines
          STARTROW       = 1
          PAGES          = 99
          RQTITLE        = 'Print Spool'
          RQCOPIES       = 1
          RQOWNER        = sy-uname
          IMMEDIATELY    = ' '
        IMPORTING
          RQID           = lv_spoolid
        TABLES
          TEXT_DATA      = gt_file_table
        EXCEPTIONS
          NAME_MISSING   = 1
          NAME_TWICE     = 2
          NOT_FOUND      = 3
          ILLEGAL_LAYOUT = 4
          INTERNAL_ERROR = 5
          SIZE_MISMATCH  = 6
          OTHERS         = 7.
      IF SY-SUBRC <> 0.
    * Implement suitable error handling here
      ENDIF.
    Passed the spool id generated to below FM but it is not converting into pdf
    CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
        EXPORTING
          SRC_SPOOLID                    = lv_spoolid
         NO_DIALOG                      = ' '
         DST_DEVICE                     = 'LOCW'
         PDF_DESTINATION                = 'X'
    *     NO_BACKGROUND                  =
    *     GET_SIZE_FROM_FORMAT           =
    *     USE_CASCADING                  = ' '
    *   IMPORTING
    *     PDF_BYTECOUNT                  = lv_bytecount
    *     PDF_SPOOLID                    = lv_pdf1
    *     LIST_PAGECOUNT                 =
    *     BTC_JOBNAME                    =
    *     BTC_JOBCOUNT                   =
    *     BIN_FILE                       = lv_pdf
       TABLES
         PDF                            = lt_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.
    * Implement suitable error handling here
      ENDIF.
    When I go to SP01 and check the spool generated it is in raw document type.
    How can I convert this raw document to pdf type ??
    Please help me to resolve this.
    Regards,
    Krishna

    Ok, since I can't edit the post anymore, here the new version of code, without the use of SCMS_XSTRING_TO_BINARY for intermediate table. Reasons: effectively doubles the memory use and I don't want to check if the kernel is cutting off the hexdecimal nulls when the last spool line is written, or to relay of that behaviour.
    Matthew Billingham, and other mods: it would be really nice if you could hide the old version please (this post here). The number of google results for that FM is scary and I really don't want to contribute to promoting its use...
    REPORT zjbtst2.
    PARAMETERS: p_file TYPE string
       LOWER CASE
       DEFAULT '/usr/sap/....'
       OBLIGATORY.
    PARAMETERS: p_dest TYPE rspopname
      DEFAULT 'LP01'
      OBLIGATORY .
    PERFORM main USING p_file p_dest.
    *&      Form  main
    FORM main
      USING
        i_file TYPE string
        i_dest TYPE  rspopname.
      DATA: lo_handle TYPE REF TO cl_rspo_spool_handle .
      DATA: l_spoolid TYPE rspoid.
      DATA: l_content TYPE xstring .
      DATA: l_message_text TYPE string .
      PERFORM get_file USING i_file CHANGING l_content .
      PERFORM new_spool USING i_dest CHANGING lo_handle l_spoolid.
      PERFORM write_spool USING lo_handle l_spoolid l_content .
      l_message_text = |Spool { l_spoolid } created| .
      MESSAGE l_message_text TYPE 'I' .
    ENDFORM .                  "main
    *&      Form  get_file
    FORM get_file
       USING i_file TYPE string
       CHANGING c_content TYPE xstring.
      DATA: l_message_text TYPE string .
      CLEAR c_content .
      OPEN DATASET i_file FOR INPUT IN BINARY MODE
        MESSAGE l_message_text.
      IF sy-subrc NE 0 .
        MESSAGE l_message_text TYPE 'E' .
      ELSE.
        READ DATASET i_file INTO c_content .
        CLOSE DATASET i_file.
      ENDIF .
    ENDFORM .                   "get_file
    *&      Form  new_spool
    FORM new_spool
       USING
         i_destination TYPE rspopname
       CHANGING
         co_handle TYPE REF TO cl_rspo_spool_handle
         c_spoolid TYPE rspoid .
      cl_rspo_spool_handle=>open(
        EXPORTING
          dest           = i_destination
          name           = 'Test'
          layout         = 'G_RAW'
          doctype        = 'BIN'
        IMPORTING
          ref            = co_handle
          spoolid        = c_spoolid
        EXCEPTIONS
          device_missing = 1
          name_twice     = 2
          no_such_device = 3
          operation_failed = 4
          OTHERS         = 5
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                   WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM .                    "new_spool
    *&      Form  WRITE_SPOOL
    FORM write_spool
      USING
        io_handle TYPE REF TO cl_rspo_spool_handle
        i_spoolid TYPE rspoid
        i_content TYPE xstring .
      DATA: l_buffer(128) TYPE x ."Hmm, 128 does work, 4096 doesn't...
      DATA: l_buffer_length TYPE i .
      DATA: l_full_buffers_count TYPE i .
      DATA: l_part_buffer_length TYPE i .
      DATA: l_offset TYPE i .
      DATA: l_length TYPE i .
      l_buffer_length = xstrlen( l_buffer ) .
      l_full_buffers_count = xstrlen( i_content ) DIV l_buffer_length .
      l_part_buffer_length = xstrlen( i_content ) MOD l_buffer_length .
      DO l_full_buffers_count + 1 TIMES .
        IF sy-index LE l_full_buffers_count .
          l_length = l_buffer_length .
        ELSEIF l_part_buffer_length GT 0 .
          l_length = l_part_buffer_length .
        ELSE.
          EXIT .
        ENDIF .
        l_buffer = i_content+l_offset(l_length) .
        ADD l_length TO l_offset .
        io_handle->write_binary(
          EXPORTING
            data           = l_buffer
            length         = l_length
          EXCEPTIONS
            not_open       = 1
            operation_failed = 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.
      ENDDO .
      io_handle->close(
        EXPORTING
          final          = 'X'
        EXCEPTIONS
          operation_failed = 1
          already_closed = 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.
    ENDFORM .                    "write_spool

  • Data Conversion Type C - Type D (and Type T)

    Hello,
    I would know how to convert a data Type C (char) to a data Type D (dats) or a data Type T (time).
    In fact I've got datas in char representing Dates(20060818) and Time (060126) and I want to convert them in BW in Dats and Time.
    Do you know how to convert in routines?
    Thanks for your help!!!

    HI vince,
    data : v_char(8) type c value '20060909',        v_dats    type dats.       v_dats = v_char.
    check out this also,
    Re: FM to convert char to dats type
    Regards,
    San!

  • Converting binary data to cluster

    Hello,
    I have a problem converting binary data to a cluster. I have to create a VI that reads out some parameter from a device, which is connected via RS232. I get an array of 128 Byte from the device. The data has the following (C-)structure:
    struct PARAM
    char cVersion[64];
    float fDeviceID;
    float fChannels;
    float fSensor;
    float fTrigger;
    float fConst[5];
    char cReserved[28];
    How can I convert the binary array to a cluster? I created a cluster (see attachment), but I couldn't connect it with the "Type Cast" VI. Has anyone an idea how to solve this problem?
    Thanks, Martin
    Attachments:
    cluster.jpg ‏16 KB

    It is tedious to convert binary data to LabVIEW data when you have arrays. You have to typecast the data with clusters of the same fixed length as in the structure. Large clusters are easily created on the diagram using Array to Cluster primitive. See the attavhed picture.
    LabVIEW, C'est LabVIEW
    Attachments:
    conversion.gif ‏11 KB

  • Stored Procedures with Date data types and Oracle

    This should be easy.... But i keep getting the error:
    [Macromedia][Oracle JDBC Driver][Oracle]ORA-06550: line 1,
    column 7: PLS-00306: wrong number or types of arguments in call to
    'RETRIEVE_TS' ORA-06550: line 1, column 7: PL/SQL: Statement
    ignored
    And I got it worked out to where i know it is a problem with
    the way i am using the date data types in a stored procedure....
    In the past i usually avoided calling procedures in Oracle
    with date as the in type.... It is always easiest to let oracle
    convert the string to a date.... Unfortunately now i am stuck with
    having a date type in the procedure call.... So the question is:
    WHAT IS THE PROPER WAY TO SUBMIT DATE/TIME STAMP IN A STORED
    PROCEDURE?
    The Oracle Procedure looks like this:
    PROCEDURE retrieve_ts (
    p_at_tsv_rc IN OUT sys_refcursor,
    p_units IN OUT VARCHAR2,
    p_officeid IN VARCHAR2,
    p_timeseries_desc IN VARCHAR2,
    p_start_time IN DATE,
    p_end_time IN DATE,
    p_timezone IN VARCHAR2 DEFAULT 'GMT',
    p_trim IN NUMBER DEFAULT false_num,
    p_inclusive IN NUMBER DEFAULT NULL,
    p_versiondate IN DATE DEFAULT NULL,
    p_max_version IN NUMBER DEFAULT true_num
    AND the stored procedure call looks like this:
    <cfset ed = Now()>
    <cfset sd = #DateAdd("d",-lbt,Now())#>
    <cfstoredproc datasource="CWMS"
    procedure="cwms.cwms_ts.retrieve_ts"
    returncode="no">
    <cfprocparam type="inout" variable="unit" value="#unit#"
    dbvarname="@p_units"
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="in" value="MVS"
    dbvarname="@p_officeid"
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="in" value=#id.cwms_ts_id#
    dbvarname="@p_timeseries_desc"
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="in" value="#sd#"
    dbvarname="@p_start_time"
    cfsqltype="cf_sql_date">
    <cfprocparam type="in" value="#ed#"
    dbvarname="@p_end_time"
    cfsqltype="cf_sql_date">
    <cfprocparam type="in" value="#tz#"
    dbvarname="@p_time_zone"
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="in" value="0"
    dbvarname="@p_trim"
    cfsqltype="cf_sql_numeric">
    <cfprocparam type="in" value=""
    null = "yes"
    dbvarname="@p_inclusive"
    cfsqltype="cf_sql_numeric">
    <cfprocparam type="in" value=""
    null="yes"
    dbvarname="@p_versiondate"
    cfsqltype="cf_sql_date">
    <cfprocparam type="in" value="1"
    dbvarname="@p_max_version"
    cfsqltype="cf_sql_numeric">
    <cfprocresult name="ts_dat">
    </cfstoredproc>
    Text

    Yeah.... One is a type INOUT ref cursor.... which is denoted
    by the cfprocresult....
    By the way:
    Phil - the code example with a little tweaking worked fine on
    my machine....
    <<cfstoredproc procedure="test_pkg.test"
    datasource="myDSN" returncode="no">
    <cfprocparam type="IN" cfsqltype="cf_sql_timestamp"
    value="15-JUN-2005">
    <cfprocparam type="OUT" cfsqltype="cf_sql_varchar"
    variable="v_out">
    <cfprocresult name="rs1">
    </cfstoredproc>
    PROCEDURE test(
    v3_out OUT ref_cur_type,
    v1_in IN date default null,
    v2_out OUT varchar2
    IS
    BEGIN
    v2_out := TO_CHAR(v1_in, 'mm/dd/yyyy');
    OPEN v3_out
    FOR
    SELECT *
    FROM user
    WHERE activation_date >= v1_in;
    END test;
    Why do i still get this error......
    Here is what it looks like now:
    PROCEDURE retrieve_ts (
    p_at_tsv_rc IN OUT sys_refcursor,
    p_units IN OUT VARCHAR2,
    p_officeid IN VARCHAR2,
    p_timeseries_desc IN VARCHAR2,
    p_start_time IN DATE,
    p_end_time IN DATE,
    p_timezone IN VARCHAR2 DEFAULT 'GMT',
    p_trim IN NUMBER DEFAULT false_num,
    p_inclusive IN NUMBER DEFAULT NULL,
    p_versiondate IN DATE DEFAULT NULL,
    p_max_version IN NUMBER DEFAULT true_num
    <cfstoredproc datasource="CWMS"
    procedure="cwms.cwms_ts.retrieve_ts"
    returncode="no">
    <cfprocparam type="INOUT" variable="p_units"
    value="#unit#" <!---p_units--->
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="IN" value="MVS"
    <!---p_officeid--->
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="IN" value=#id.cwms_ts_id#
    <!---p_timeseries_desc--->
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="IN" value="#sd#"
    <!---p_start_time--->
    cfsqltype="cf_sql_timestamp">
    <cfprocparam type="IN" value="#ed#"
    <!---p_end_time--->
    cfsqltype="cf_sql_timestamp">
    <cfprocparam type="IN" value="#tz#"
    <!---p_timezone--->
    cfsqltype="cf_sql_varchar">
    <cfprocparam type="IN" value="0" <!---p_trim--->
    cfsqltype="cf_sql_integer">
    <cfprocparam type="IN" value=""
    <!---p_inclusive--->
    null = "yes"
    cfsqltype="cf_sql_numeric">
    <cfprocparam type="IN" value=""
    <!---p_versiondate--->
    null="yes"
    cfsqltype="cf_sql_timestamp">
    <cfprocparam type="IN" value="1"
    <!---p_max_version--->
    cfsqltype="cf_sql_integer">
    <cfprocresult name="ts_dat">
    <!---sys_refcursor--->
    </cfstoredproc>
    If I truly am short a parameter, How do you specify the INOUT
    sys_refcursor?

  • How to convert base64 data to an image

    Hello, my enterprise application is receiving base64 enocoded image data in an xml file. Now I need to convert it to a native image formats like jpeg/jpg/tiff/pdf etc. Does anybody know if there are any Java apis (both free/paid) which let you do this. Actually I would not have any idea of what type of image it was when it was initially encoded to base64 format. I am looking for an API/technique that can convert base64 data to any image depending on what I want at runtime.
    Thanks a lot in advance.
    R

    Hi there,
    I've had to deal with exactly the same problem myself. The images I had to deal with were all TIFF files, and that was okay, I'd say one of your first steps would be to find out what format these images are in.
    I used a SAX Content Handler to pull the base 64 image data out of the XML into a String, and then converted the Base 64 String into a byte array. From there I could either simply write the byte array to a file, or if I wanted use ImageIO to create an Image object, work with the metadata or even save it in a different format, though I never actually did that.
    Anyway, here is some code I whipped up to convert the String to a byte array, then write the byte array to disk. Let us know how you get along!
          * Writes a byte array to a file.
          * @param result          String containing base64 image data     
          * @param fileName     File name to write the converted image to
         public static void writeTiff(byte[] result, String fileName) throws IOException {          
              FileOutputStream out = new FileOutputStream(fileName, true);
              out.write(result);
              out.close();
          * Converts a String of base 64 image data, captured from XML, into a byte array.
          * @param      image     A Base 64 String          
          * @return      byte[]          
         public static byte[] convertTiff(String image) throws IOException {          
              byte[] result = new sun.misc.BASE64Decoder().decodeBuffer(image);
              return result;
         }

Maybe you are looking for