Date format error in loading Programme

Hi all,
I am getting the error as I_BLDAT invalid date (ORA-01840: input value not long enough for date format) but some how in loading program I am getting the date as . .0 instead of 00000000. can someone please help me where it went wrong.These are the lines involing BLDAT
CONCATENATE:
         wa_zfrcptp-bldat+6(2) wa_zfrcptp-bldat+4(2)
         wa_zfrcptp-bldat+0(4) INTO l_lla_dtl_rec-pay_date,
wa_zfrcptp-bldat        TO l_huon_crr_rec-receipt_date.
wa_zfrcptp-bldat        TO l_huon_ipr_rec-receipt_date.
CONCATENATE wa_zfrcptp-bldat+6(2)
                wa_zfrcptp-bldat+4(2)
                wa_zfrcptp-bldat+0(4)
                           INTO l_cal_dtl_rec-receipt_date
bldat_i(8)           TYPE c,
l_cid_dtl_rec-bldat_i     = wa_zfrcptp-bldat.
Thanks in advance,
Rishik.
Edited by: Rishik on Apr 16, 2009 8:44 AM

HI,
If you are using the BDC for loading data..then while passing BLDAT to the BDC
Use the WRITE statement to convert the date to user format and pass to BDC
l_endda1 is of type char with length 10. endda type sy-datum.
WRITE i_input_line-endda TO l_endda1.
    PERFORM bdc_field       USING 'RP50G-ENDDA'    l_endda1.

Similar Messages

  • Date Format  error while loading *.dat  file to Sataging .

    Hi All ,
    Loading data from *.dat file in to Staging , the dat file contains data for date in 'MM-DD-YYYY' format which is String , when it loading by control file it produce the error date format is not supported .I think ti required DD-MM-YYYY format . Is their any properties to change the date format or else need to write the function for converting date format .
    I am using OWb 10g Release 1 , with same DB .
    Please guide me
    Thanx in advance
    Regards ,

    Hi,
    Before loading into staging, you can use Expression operator to convert the CHAR into DATE with something like this:
    TO_DATE('01-02-2005','MM-DD-YYYY')
    Hope this helps.

  • Bex Analyser : Date Format error.

    Hi All,
    We are facing date format error, while running the query in Bex analyzer.
    We have one column in report i.e Net Payment Date, so when we run the query in analyzer the single date like "5-6-2010 is getting swapped like 6-5-10 & year also showing two digits i.e instead of 2010 it shows 10" & date like "12-09-2010 is coming perfectly."
    Means the date which is in single digit we are facing this problem like 1 to 9 & the dates which are 10 & above showing perfectly.
    In RSRT the query showing proper result, so i don't think it's BI problem.
    The regional setting is DD-MM-YYYY & Date separator is '-' & we don't want to change this format.
    Is there any SAP note or any solution for this..??
    All the replays are gr8ly appreciated.
    Thanks,
    Santosh

    Hi Santosh,
    how about web display? is it ok? for me it seems more an Excel problem, so maybe you should check if there is special formatingin this.
    Regards,
    Anass

  • Getting Duplicate data Records error while loading the Master data.

    Hi All,
    We are getting Duplicate data Records error while loading the Profit centre Master data. Master data contains time dependent attributes.
    the load is direct update. So i made it red and tried to reloaded from PSA even though it is throwing same error.
    I checked in PSA. Showing red which records have same Profit centre.
    Could any one give us any suggestions to resolve the issues please.
    Thanks & Regards,
    Raju

    Hi Raju,
            I assume there are no routines written in the update rules and also you ae directly loading the data from R/3 ( not from any ODS). If that is the case then it could be that, the data maintained in R/3 has overlapping time intervals (since  time dependency of attributes is involved). Check your PSA if the same profit center has time intervals which over lap. In that case, you need to get this fixed in R/3. If there are no overlapping time intervals, you can simply increase the error tolerance limit in your info-package and repeat the load.
    Hope this helps you.
    Thanks & Regards,
    Nithin Reddy.

  • Home Page Date Format ERROR ...

    I installed language support on my Portal 3.0.9.8 with 3 different languages: us, i=italian, f
    but when i use the "i" language there are many problems with format date ...
    in the Portal Home Page i have a message like "date format not valid"
    and i have problems in the creation of the content area's items with the publish date.
    Any one have an idea ???

    HI All,
    I have check my own data date format.
    But when i tried to activate the cycle count under
    Menu path: 
    Materials Management > Inventory Management and Physical Inventory>Physical Inventory> Cycle Counting
    I will not put any date on it, that's why its weird that i get an date format error.
    Where this error came from?
    Thanks..

  • Date format error in LOV with dates. Jdeveloper 11.1.1.0.1

    We're facing a silly problem, which no one else seems to have... ?
    When creating a LOV on a date column (eg hr.employees.hiredate) populated from another DataSource (eg. hr.job_history.startDate), the Application Module is working fine when tested.
    Building a jspx on top of the Datacontrol picks up the LOV defined and creates a SelectOneChoice for hiredate. But for what ever value you select, it will complain about wrong date format "Error: The date is not in the correct format".
    I can see, that the "real" value selected from the SelectOneChoice is an index-value, and the "format checking code" builtin to Jdeveloper can't figure out how to get the datevalue for the selected index.
    Surely it must be me, who can't see the forest for the trees?
    Thanks in advance :)

    Its a bit tricky - but its doable... We have to abandon the "Oracle LOV model" to make it work.
    Surely its must be some kind of bug in the Oracle LOV model? ?
    The way to do it is like:
    In Model project:
    M1: Remove List Of Value binding from Model layer (Business components). Both entity and view if declared both.
    M2: Create a view for the "date list" - ie the datasource for possible values in list.
    M3: Secure that format mask (hint) for all dates involved are the same.
    In View project:
    V1: Drop datacontrol on jspx as normal input dates.
    V2:Go to bindings for the page, and add (+) a new TABLE binding (And from here an iterator) to the view containing the list.
    Modify the input dates you want to be list:
    V3: Select the input date and rightclick and choose "convert"
    V4: Select a SelectOneChoice component
    V5: Pick the right column (tree) value to show in the SelectOneChoice componet.
    Switch to source view:
    V6: Drop a ForEach item from the component Palette (ADF Faces -> operations) on the SelectOneChoice (easiest to drop in structure windows)
    V7: Drop a Select Item from the component Palette (ADF Faces -> common components) on the SelectOneChoice (easiest to drop in structure window).
    Modify the source:
    V8: Insert "items" and "var" attributes in ForEach like this: +"items="#{bindings.[[Here goes the name of the New TableBinding component you made in Step V2]].rangeSet}" var="li"+
    V9: Insert "value" attribute and change "label" attribute to reference your new list variable "li" like this: +label="#{li.[[here goes the name of the new TableBinding Component attribute (columnname) you made in Step V2]]}" value="#{li.Firstofmonth}"+
    V10: Insert/edit any converters/validators needed for input validation.
    Done....
    You should end up with a SelectOnChoice definition (in your jspx file) something like this one:
    +<af:selectOneChoice value="#{row.bindings.ActiveFrom.inputValue}"+
    +label="#{row.bindings.ActiveFrom.label}"+
    +required="#{bindings.McAccountsView1.hints.ActiveFrom.mandatory}"+
    +shortDesc="#{bindings.McAccountsView1.hints.ActiveFrom.tooltip}">+
    +<af:forEach items="#{bindings.FirstOfMonth1.rangeSet}" var="li">+
    +<af:selectItem label="#{li.Firstofmonth}" value="#{li.Firstofmonth}" />+
    +</af:forEach>+
    +<af:convertDateTime pattern="dd-MM-yyyy"+
    +messageDetailConvertDate="Its not possible to convert the date in {0} since its value {1} dont conform to the pattern {2}"+
    +secondaryPattern="yyyy-MM-dd"/>+
    +</af:selectOneChoice>+
    And a binding definition (in your pagedef file) something like this one:
    +<?xml version="1.0" encoding="UTF-8" ?>+
    +<pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"+
    +version="11.1.1.52.5" id="McAccounts01PageDef"+
    +Package="solution">+
    +<parameters/>+
    +<executables>+
    +<iterator Binds="McAccountsView1" RangeSize="25"+
    +DataControl="dateLovEmailDataControl"+
    +id="McAccountsView1Iterator" ChangeEventPolicy="ppr"/>+
    +<searchRegion Binds="McAccountsView1Iterator" Criteria=""+
    +Customizer="oracle.jbo.uicli.binding.JUSearchBindingCustomizer"+
    +id="McAccountsView1Query"/>+
    +<iterator id="FirstOfMonth1Iterator" RangeSize="10" Binds="FirstOfMonth1"+
    +DataControl="dateLovEmailDataControl"/>+
    +</executables>+
    +<bindings>+
    +<tree IterBinding="McAccountsView1Iterator" id="McAccountsView1">+
    +<nodeDefinition DefName="dk.hammerJakobsen.Jdev.sample.model.McAccountsView">+
    +<AttrNames>+
    +<Item Value="EmployeeName"/>+
    +<Item Value="Id"/>+
    +<Item Value="BankAccount"/>+
    +<Item Value="StellarAccount"/>+
    +<Item Value="ActiveFrom"/>+
    +<Item Value="ActiveTo"/>+
    +</AttrNames>+
    +</nodeDefinition>+
    +</tree>+
    +<action IterBinding="McAccountsView1Iterator" id="CreateInsert"+
    +RequiresUpdateModel="true" Action="createInsertRow"/>+
    +<action IterBinding="McAccountsView1Iterator" id="Delete"+
    +RequiresUpdateModel="false" Action="removeCurrentRow"/>+
    +<action IterBinding="McAccountsView1Iterator" id="First"+
    +RequiresUpdateModel="true" Action="first"/>+
    +<action IterBinding="McAccountsView1Iterator" id="Last"+
    +RequiresUpdateModel="true" Action="last"/>+
    +<action IterBinding="McAccountsView1Iterator" id="Find"+
    +RequiresUpdateModel="true" Action="iteratorFind"/>+
    +<action IterBinding="McAccountsView1Iterator" id="Execute"+
    +RequiresUpdateModel="true" Action="iteratorExecute"/>+
    +<action id="Commit" RequiresUpdateModel="true" Action="commitTransaction"+
    +DataControl="dateLovEmailDataControl"/>+
    +<action id="Rollback" RequiresUpdateModel="false"+
    +Action="rollbackTransaction" DataControl="dateLovEmailDataControl"/>+
    +<table IterBinding="FirstOfMonth1Iterator" id="FirstOfMonth1">+
    +<AttrNames>+
    +<Item Value="Firstofmonth"/>+
    +</AttrNames>+
    +</table>+
    +</bindings>+
    +</pageDefinition>+
    this approach works... But... Its important to remember that the "two" values are different now. The value in the row, and the possible value from the list. When you select a new value for the row from the list, you'll have to commit the value before its in the row - even seen from Faces. You can't reference the value in the base table in a validator before the row is committed.
    For the same reason I'll advise, that you only use the model in Single row view, since its can behave a bit funny in table views, where there's a lot of PPR.

  • Date Format Error During Cycle Count Activation

    Hi MM Guru's,
    Could you kindly help me with regards to my problem?
    I was trying to activate the cycle count for the newly plant i created under new company code.
    But im getting a date format error?
    Anyone who could help me regarding this?
    Thank you in advance.

    HI All,
    I have check my own data date format.
    But when i tried to activate the cycle count under
    Menu path: 
    Materials Management > Inventory Management and Physical Inventory>Physical Inventory> Cycle Counting
    I will not put any date on it, that's why its weird that i get an date format error.
    Where this error came from?
    Thanks..

  • Mailman - bounced "data format error" - Mailbox does not exist

    Hi gurus,
    All my mailing lists works great, except one of then...
    Its said: a lot of messages like this, several times:
    Mar 6 07:08:33 rossellimac postfix/pipe[2931]: 3F55D15F892: to=<[email protected]>, orig_to=<[email protected]>, relay=cyrus, delay=0.11, delays=0.04/0/0/0.07, dsn=5.6.0, status=bounced (data format error. Command output: alejandro: Mailbox does not exist )
    Also this error:
    3/6/09 8:18:20 AM lmtpunix[4844] AOD: user opts: get attributes for user: alejandro failed with error: -14479
    3/6/09 8:18:20 AM lmtpunix[4844] warning: unable to post message for user: alejandro, mail is not enabled for this user
    The computers halt for a minute... when I send an email to this list (general@) where "alejandro is a user"
    Please, some advice... I surf the web... and not always produce error...
    Thanks in advance.
    Message was edited by: alopezruiz

    ok

  • Error in date format when  I load a CSV file

    I am using Oracle G10 XE and I am trying to load data into my database from comma separated files.
    When I load the data from a CSV file which has the date with the following format "DD/MM/YYYY", I received the following error "ORA-01843: not a valid month".
    I have the NSL_LANG set to AMERICAN. I have tried the following command: "ALTER SESSION SET NLS DATE FORMAT="DD/MM/YYYY" and this does nothing. When I try to run "SELECT SYSDATE "NOW" FROM DUAL;" I get the date in this format "10-NOV-06".
    I will appreciate any help about migrating my data with date fields in format DD//MM/YYYY.
    Sincerely,
    Polonio

    See Re: Get error in date when I load a CSV file

  • DATE Format Error in ODI-11g(11.1.1.3)

    I am using ETL transformations in ODI-11g. There's a dominant issue regarding date formattings when I map an ODI variable (storing date) with a TGT column(datatype=date) mappings.
    In all the src-tgt mappings I am formatting the date by using TO_DATE() functions. But still getting the error:
    "ORA-01830: date format picture ends before converting entire input string".
    A point to Note: The same ETL in other env are ruuning fine but in my new dev env it's giving this date error.
    I had checked with the DBA folks and they confirmed they set equal DATE settings in all the env.
    The ODI Variable is defined as an "Alphanumeric".
    Tx Used: #BUSINESS_CURRENT_DT=TO_DATE('Date','YYYY-MM-DD')
    Require some urgent advice...Please let me know

    Hi,
    W store name-value pair in the Control table from where we exctract our data. Both (param name and param value) are varchars.
    Well this looks pretty strange in 11g! Here's what we found out...
    If you are trying to retrieve a date variable by using TO_DATE() in the refresh query the ODI Java driver (JDK 1.6) would call java.sql.timestamp and gracefully attach HH:MI:SS.NS along with the date (YYYY-MM-DD HH:MI:SS.NS). My target ia a date always..!
    So, when I do: TO_DATE('20101010','YYYY-MM-DD) in the refresh query ODI stores it as '2010-10-10 00:00:00.0'
    For this the Load always fails as Oracle would not be able to interpret a timestamp by suing TO_DATE()
    The Java driver does this damage. However, it may be wise to store as a timestamp rather as a date if in case u do a Data capture and want the exact time credentials.
    Unfortunately not a req, as of now for us so I had to chop-off the timestamp..!
    Let me know if you find any other details...
    Thanks.!

  • Date Format in SQL Loader

    Dear All,
    I have a table CMS_HO where I have defined different columns. One column is of date type STATUS_DATE. I want to upload one ASCII file where one field is in the format like below:
    5/26/2008 12:41
    5/26/2008 8:51
    5/28/2008 9:01
    5/28/2008 13:54
    5/13/2008 10:45
    4/6/2008 9:21
    I want to upload file into Oracle database. Currently I am using following control file:
    LOAD DATA
    INTO TABLE CMS_HO TRUNCATE
    FIELDS TERMINATED BY "\t"
    TRAILING NULLCOLS
    ( ID,EXPIRYDATE, VER, SN, STATUS_DATE)
    There seems error in the STATUS_DATE field in control file. Can any one help how to modify this Control file so that data against this field can be uploaded into date format please?
    Thanks

    Here's an example i pulled from the web on specifying the date format in a control file.
    http://infolab.stanford.edu/~ullman/fcdb/oracle/or-load.html#loading%20date%20data
    Based on the sample data you provided, i think this is the format you're after.
    ME_XE?select
      2     to_date('5/13/2008 10:45', 'mm/dd/yyyy hh24:mi') as date_value_24_hours
      3  from dual;
    DATE_VALUE_24_HOURS
    13-MAY-2008 10 45:00
    1 row selected.
    Elapsed: 00:00:00.89

  • Date format in Matrix loaded by DataTable is shown as 20080319

    Hello,
    I've loaded most of our matrixes with DataTables. No problems up to now. Also date columns where shown in correct B1 GUI format.
    But now with a new matrix the date is 'suddenly' shown as '20080319'. When I view at B1 system information (at the bottom of B1) the column is described correctly with B1 GUI format:
    U_DateEndPr (Date)
    19.03.2008 [Form....Item..., U_DatEndPr]
    I've made a test (one of many):
    I've loaded the 'problem-matrix' with some columns (including one date column) from another DataTable which works correctly on another Matrix/Pane.
    The result is the same:
    In the first (correct working) matrix (pane 1) the date is 19.03.2008 and
    in the second matrix 20080319
    Is there something wrong with the matrix itself?
    I have absolutly no idea where my fault is.
    Does anybody made the same or similar experiences?
    So long,
    Roland

    Hello Petr,
    for the test which I've made i can say yes: I've loaded the problem-DataTable with the same query as the working dataTable.
    The only difference is:
    The problem-matrix has less columns than the working matrix. So I couldn't bound the problem.-DataTable/Matrix to all of the query result columns.
    Another hint:
    The Date format '20080319' looks like the result of SDK-ValueEx (B1-DB-Format-String)
    In another column beside '20080319' there's a double-value. This is shown with the correct decimal-separator of B1 (I've changed decimal sep. to '#' for test. The columns ar shown as:
    '20080319'  |  142#89
    ...so the second column is displayed correctly but the date format is still wrong...
    And:
    I get the same result when I do the problem-DataTable bind to exactly the same dataTable-UID as of the working DataTable.
    So at the moment I suppose that the error is in the Matrix-Object. Because both matrixes are loaded by the same DataTable (for trial) and only one of them shows wrong date-format.
    I forgot:
    The form with the problem-matrix was made with a 2 years old screenpainter. Althogh I've made changes on the form with a actual screenpainter - could this be a problem?
    Hmm, but I don't think so because on another pane and matrix of the same old form the date works corectly...
    Edited by: Roland Toschek on Mar 19, 2008 1:07 PM

  • Date format error while accessing date from SQLSERVER

    Hi all, in me webdynpro application I have taken Date type for the Input Field.
    At date select it is displaying in the format
      *2/14/2009 i.e. mm/dd/yyyy*
    And when I am saving date in the sql database then the date format changes to..
    2009-02-14 i.e..yyyy/mm/dd.
    But using the Date format method I have changed the format as per the need to push date in the SQL database table...
    In the table SQL the date attribute is in form i.e.    02/14/2009 as like from the date select from the date Input Fieldu2026But the problem is that database is not being able to display in that Input field again.
    I have use the coding both at Insertion and selection of the database i.e..
    Date Sdate, Edate;
    Sdate     =   Date.valueOf (rs.getString ("Sdate"));
    Edate     =   Date.valueOf (rs.getString ("Edate"));
    SimpleDateFormat date Formatter = new SimpleDateFormat ("MM/dd/yyyy");
    Sdate = wdContext.currentProjectElement ().getEdate ();
    Edate = wdContext.currentProjectElement ().getEdate ();
      String Sd = dateFormatter.format (Sdate);
      String Ed = dateFormatter.format (Edate);
      Date Sdd =Date.valueOf (Sd);
      Date Edd =Date.valueOf (Ed);
    But at selection of the database the error for the date format isu2026.
    java.lang.IllegalArgumentException
    If somebody knows how to resolve this ,plz let me know
    Regards:
    SK

    for displaying the value only, I think, you are converting to string.
    sol1:
    1. Create a simple type in dictionary: under Dictionary -> Local Dictionary -> Simple Types
    2. go to Definition tab: Change Built-in Type as Date
    3. go to Representation tab: specify format e.g.: MM/dd/yyyy
    4. go to Context and change the date context attribute to the created type.
    sol2:
    please try to minimize the casting between Date and String.
    I believe in database date is stored as Date type itself. My suggestion will be for displaying keep a separate attribute and set it on each db call.
    below code is converting from Date to String.
    Date Sdate, Edate;
    Sdate = rs.getDate ("Sdate");
    Edate = rs.getDate ("Edate");
    SimpleDateFormat date Formatter = new SimpleDateFormat ("MM/dd/yyyy");
    String Sd = dateFormatter.format (Sdate);
    String Ed = dateFormatter.format (Edate);

  • Date Formatting error in JDBC adapter

    Hi,
    While inserting date using a Receiver JDBC Adapter i am getting a "Month not valid" error can anyone please tell me how do i pass date in the required format. Database is Oracle.

    Hi Vinay,
    Oracle's default format for DATE is "DD-MON-YY"
    With the functions to_char and to_date, a date format can be used. Example:
    select to_char(sysdate,'DD/MM/YYYY HH24:MI:SS') from dual;
    will return something like: 24/03/2006 14:36:43
    Regards,
    Prateek

  • Input Value long enough for date format ,Error in executing parallel query

    Hi,
    My Table: ANML( ID, STATUS,B_DATE,B_MONTH,B_YEAR, DEATH_DATE)
    status 1 for alive and 2 for dead.
    i wrote a view to get age.
    as
    create or relace view view1 as
    select top."ID",top."STATUS",top."DOB",top."DEATH_DATE",top."ANML_AGE",top."DAYSDIFF",
    CASE
    WHEN anml_age < 1
    THEN 'D'
    ELSE 'M'
    END age_unit,
    CASE
    WHEN anml_age < 1
    THEN TO_CHAR (daysdiff || ' Day(s)')
    WHEN anml_age < 12
    THEN TO_CHAR (anml_age || ' Month(s)')
    WHEN MOD (anml_age, 12) = 0
    THEN TO_CHAR (ROUND (anml_age / 12, 0) || ' Year(s) '
    ELSE TO_CHAR ( ROUND (anml_age / 12, 0)
    || ' Year(s) '
    || MOD (anml_age, 12)
    || ' Month(s)'
    END age_string
    from
    (SELECT a.*,
    CASE WHEN status IN ( 1)
    THEN FLOOR(MONTHS_BETWEEN(TRUNC(SYSDATE),dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(MONTHS_BETWEEN(death_date,dob))
    END anml_age,
    CASE WHEN status IN (1)
    THEN FLOOR(TRUNC(SYSDATE)-TRUNC(dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(TRUNC(death_date) - TRUNC(dob))
    END daysdiff
    from (
    SELECTanml.id, status,
    TO_DATE ( DECODE (b_date,
    NULL, 1,
    b_date
    || '-'
    || DECODE (b_month,
    NULL, 1,
    b_month
    || '-'
    || b_year,
    'dd-mm-yyyy'
    ) DOB,
    death_date
    FROM anml
    WHERE b_year IS NOT NULL
    ) a) top
    when i tried to fetch all values from view its working fine.
    But when i tried to fetch values based on condition like as follows,
    select * from view1 where anml_age > 20 and anml_age<30
    I am getting error like:
    Input Value long enough for date format and Error in executing parallel query
    Please tell me wht is wrong.

    Here is your formatted code
    create or relace view view1 as
    select top."ID",top."STATUS",top."DOB",top."DEATH_DATE",top."ANML_AGE",top."DAYSDIFF",
    CASE
    WHEN anml_age < 1
    THEN 'D'
    ELSE 'M'
    END age_unit,
    CASE
    WHEN anml_age < 1
    THEN TO_CHAR (daysdiff || ' Day(s)')
    WHEN anml_age < 12
    THEN TO_CHAR (anml_age || ' Month(s)')
    WHEN MOD (anml_age, 12) = 0
    THEN TO_CHAR (ROUND (anml_age / 12, 0) || ' Year(s) '
    ELSE TO_CHAR ( ROUND (anml_age / 12, 0)
    || ' Year(s) '
    || MOD (anml_age, 12)
    || ' Month(s)'
    END age_string
    from
    (SELECT a.*,
    CASE WHEN status IN ( 1)
    THEN FLOOR(MONTHS_BETWEEN(TRUNC(SYSDATE),dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(MONTHS_BETWEEN(death_date,dob))
    END anml_age,
    CASE WHEN status IN (1)
    THEN FLOOR(TRUNC(SYSDATE)-TRUNC(dob))
    WHEN death_date IS NOT NULL AND status IN (2)
    THEN FLOOR(TRUNC(death_date) - TRUNC(dob))
    END daysdiff
    from (
    SELECTanml.id, status,
    TO_DATE ( DECODE (b_date,
    NULL, 1,
    b_date
    || '-'
    || DECODE (b_month,
    NULL, 1,
    b_month
    || '-'
    || b_year,
    'dd-mm-yyyy'
    ) DOB,
    death_date
    FROM anml
    WHERE b_year IS NOT NULL
    ) a) top

Maybe you are looking for