Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Web CMS (TeamSite)
Help !!! DataDeploy problem
msa02
Hi all,
I'm using dd 5.0 and templating 5.0 on solaris. Please help me solve the problem.
I'm trying to datadeploy from dcrs to a single table. The problem is that if dcr doesn't have a replicant, everything goes fine. But if there are replicants then datadeploy fails saying that values are null. Is there a different format of tags I have to use in <update> section? Do I need to install a patch even if I have only one level of replicant?
Any help would be highly appreciated
Find more posts tagged with
Comments
rwinterpacht
As far as I know, you have to account for every possible field for the datadeployment. So if you have a replicant, min 1 and max 3, and each replicant has 3 fields in it, you will have to account for 9 fields. Some of them will in fact be null. I am unaware of being able to "test" for null fields upon deployment.
msa02
Thanks for your reply. Let me try to express it in detail. Below is the chunk of update section from my .cfg file:
<update type="standalone" state-field="state">
<column name="iw_state" data-type="varchar(30)" value-from-field="state" />
<column name="region_name" data-type="VARCHAR2(100)" value-from-field="Regions/0/region_name" />
<column name="link_description" data-type="VARCHAR2(200)" value-from-field="Regions/0/link_description" />
</update>
This is fine so far but what should i do if Regions has replicant ranging 0-30. If I replace it by:
Regions/[0-2]/region_name" is-replicant="yes" />
it doesn't work.
Can you further help me in this matter. Thanks!!!
rwinterpacht
You need to have a regions for each possible replicant:
<column name="region_name0" data-type="VARCHAR2(100)" value-from-field="Regions/0/region_name" />
<column name="link_description0" data-type="VARCHAR2(200)" value-from-field="Regions/0/link_description" />
<column name="region_name1" data-type="VARCHAR2(100)" value-from-field="Regions/1/region_name" />
<column name="link_description1" data-type="VARCHAR2(200)" value-from-field="Regions/1/link_description" />
<column name="region_name2" data-type="VARCHAR2(100)" value-from-field="Regions/2/region_name" />
<column name="link_description2" data-type="VARCHAR2(200)" value-from-field="Regions/2/link_description" />
and so on.
I don't know any other way to do this, but will try to research some more as we have similar concerns with replicants.
msa02
Thanking you once again!
The sloution you are suggesting would require to have number of fieds directly proportional to the number og regions whereas in my case I cann't have 30 fields for regions0-regions29. Instead, I 'm trying to have only one region amd insert/update from replicants.
Please let me know if you come across the idea how to handle it.
msa02
thanks for your help. I found the solution. For those who have come across the same problem. we have to generate dbschema.cfg and paste the <dbschema> chunk into the database section of .cfg file. Also we need to specify the is-replicant attribute="yes".
Migrateduser
Glad that you solved the issue. Replicants are better mapped using the User defined dabase schema feature. Also, you should consider upgrading to DD521.
msa02
Thanks for your reply ArmChairExpert,
Seems like you are really expert. we recently upgraded to dd5.2.1. I have one more issue if you can take a look at my recent post; I hope that would be a piece of cake for you.
Thanks
msa02
Migrateduser
Hi,
We have a similar situation where we need to insert replicant values optionally into database. Optionally means in [0-10] I only need to insert 0, 3, 6 etc replicant values into database. How to specify datadeploy to insert only specified replicant values into the same db column? We are using user defined db schema.
Any thoughts please?
Thanks,
Krishna.
Dwayne
You might look at the IWTupleFilter interface, if you've got people on staff who are competent Java programmers. This interface allows you to manipulate the tuples in just about any way you like, so you could take the original input replicant and, based on whatever rules you specify, generate a new replicant which consists only of the rows you care about.
--
Current project: TS 5.5.2/6.1 W2K