Test Data Manager

Expand all | Collapse all

Why is the Datamaker skipped columns in the Publish to Target?

  • 1.  Why is the Datamaker skipped columns in the Publish to Target?

    Posted Feb 15, 2018 10:20 AM
      |   view attached

    We were trying to public to our Data Target (Oracle), but we can’t get the data from the source to deploy to the target. This is the error we received.

    Error 1400 for Row #1 in table IT_APPL_TECH_DEBT. ORA-01400: cannot insert NULL into ("MORPHUS"."IT_APPL_TECH_DEBT"."TECH_DEBT_NM")

    No changes made to database.

    INSERT INTO MORPHUS.IT_APPL_TECH_DEBT ( TECH_DEBT_ID, TECH_DEBT_DESC, LAST_UPD_TS, LAST_UPD_BY_ID, CRT_BY_ID, CRT_TS, APPL_ID, OPT_INIT_ID, TECH_DEBT_STAT_ID ) VALUES ( 3963, 'Testing 123', '2018-01-30 15:14:21.204', '994292251', '632075549', '2018-01-08 15:52:15.830', '112307', 4, 2)

    More description, screenshot and troubleshooting details are in the attached word document.

    Thanks.

    Attachment(s)



  • 2.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Broadcom Employee
    Posted Feb 15, 2018 04:01 PM

    Can you please share which data generation have you applied for the FRND_TECH_DEBT_ID and TECH_DEBT_NM columns in your data pool while publishing?

     

    Also you have registered tables form the target right? Can you provide the details of the data defaults that is configured for that table on the target rather than the source as in your document?



  • 3.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Posted Feb 15, 2018 05:38 PM

    Hi Anil,

     

    Thank you for the respond.

     

    Yes, all the tables on both source and target are registered. The data default is only in the “FRND_TECH_DEBT_ID” column. It is the same on both source and target table. This is the default value: CAST('TD'||TO_CHAR("TECH_DEBT_ID") AS varchar2(12))

     

    We applied the data generation on the last column, TECH_DEBT_NM, not the FRND_TECH_DEBT_ID. This is what we put for the Tech_debt_NM:

    @seqlov(0,@sqllist(PDataSource,"SELECT * FROM MORPHUS.IT_APPL_TECH_DEBT  L0 where APPL_ID='112307'")@,COLUMN_NAME)@

     

    I hope I am answering your questions correctly.

     

    Thanks,

    Andrew



  • 4.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Broadcom Employee
    Posted Feb 16, 2018 11:28 AM

    Andrew,

     

    In the function you have applied, I see the value COLUMN_NAME which should be replaced by the name of the actual column in your database. Have you validated the functions to see if it returns a value prior to publish?

     

    @seqlov(0,@sqllist(PDataSource,"SELECT * FROM MORPHUS.IT_APPL_TECH_DEBT  L0 where APPL_ID='112307'")@,COLUMN_NAME)@

     

    Thanks,

    Anil



  • 5.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Posted Feb 16, 2018 11:32 AM

    Hi Anil,

     

    Yes, we tried it, the functions works.

     

    Thanks,

    Andrew



  • 6.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Posted Feb 21, 2018 08:56 AM

    What happens When you hit the preview button, at the DataPool Editor.

    Datamaker could fill out all columns with values?



  • 7.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Posted Feb 21, 2018 11:32 AM

    Yes, the preview fill out all the columns with value, except the last 2 columns with , and no error, because the last column copied the Computation from the previous column.



  • 8.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Posted Feb 21, 2018 11:33 AM

    Hi Anil,

     

    Yes, the functions work.

     

    Thanks,

    Andrew



  • 9.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Broadcom Employee
    Posted Feb 16, 2018 11:35 AM

    Instead of a function, can you give a hard coded value and try running the publish to see if it still fails?



  • 10.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Broadcom Employee
    Posted Feb 21, 2018 11:08 AM

    Hi Andrew,

     

    Here is the answer from our L2 Manager:

     

    To exclude a column, in datamaker

    • go to the datapool
    • select ‘action for registered objects’ under Projects menu
    • right click on the target table and select ‘Maintain Table’
    • under Exclude column for the 'frnd_tech_debt_id  column select ‘ALL’ so that the column is excluded
    • republish from datamaker
    • then try from portal

     

    Regards, Dahman

     

    Please try this and verify that this works.

     

    Cheers!
    Les



  • 11.  Re: Why is the Datamaker skipped columns in the Publish to Target?

    Posted Feb 21, 2018 11:51 AM

    Hi Les,

     

    This Maintain Table helps. Excluding those 2 columns doesn't help. With the maintain table, I was able to uncheck "computed" and remove the "computation" from the last column "TECH_DEBT_NM". This resolved the issue.

     

    These 2 are not supposed to be set in the first place, so where did it came from? I did some more troubleshooting, I found that when registering the tables, Datamaker "copied" the "computed" and "computation" values form the previous column (FRND_TECH_DEBT_ID) to the last column (TECH_DEBT_NM). I think that's a bug in the Datamaker's register target table. Repeated a couple of times, I created new data pool, and perform the same steps, and it just set these values which should not have been there, as the schema created on the target database (with SQL Developer) does not have the computation in the last column.

     

    I replied to the level 2 support and provided screen shot to report this bug in Datamaker. We can close this case.

     

    Showing the value inserted by Datamaker issue when registering target tables where it should not be there.

     

    Thank you very much to all of you for replying.

     

    Best regards,

    Andrew



  • 12.  Re: Why is the Datamaker skipped columns in the Publish to Target?
    Best Answer

    Broadcom Employee
    Posted Feb 21, 2018 11:50 AM

    Hi Andrew,

     

    Thank you for your comment in the case:

     

    Hi Dahman, 

     

    Thank you very much for the detailed step on how to get to the Maintain table. This is very helpful and useful for us to troubleshoot the issue. 

     

    Raghu and I were testing it yesterday, and we found that excluding the column or not doesn’t really help. The main thing that fix the issue is by unchecking the “Computed” and remove the statement in the “Computation”, which solves the problem. So this case is closed. 

     

    However, I would like to report a new defect in Registering Data Target. This morning I tried to investigate which step actually caused the insertion of the computation. I found that when I tried registering the target table, it “copied” the “Computed” checkbox and Computation statement from the previous column. Please see the screen shot below. I think this is the source of cause to my previous issue. 

     

     

     

    Thanks, 
    Andrew 

     

    We appreciate your digging into this.  I will raise a Defect in the system to report and follow-up on a fix for the issue you found.

     

    Cheers!
    Les