Expand my Community achievements bar.

Adobe Campaign User Groups are live now. Join our Adobe Campaign User Groups and connect with your local leaders!
SOLVED

How to add insert data which is populated from enrinchment?

Avatar

Level 2

Hi, I have enrichment with all the data i want.

 

gowthamanrajendran_0-1581107546426.png

 

Now i am trying to insert into table through java script. I dont want to use update sql activity due to some table transformation.  How do i derive the data which populated in enrichment in java script. For ex

 

sqlExec("insert into gow:SampleDB(std_id,name) select std_id, name  from vars.targetSchema");

 

i want std_id and name from enrichment table.

 

 

 

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Level 2

Hi,

you can use queryDef  to fetch the data from targetSchema as shown below

 

var conditionVar="@age > 25";// example condition
var recordSet = xtk.queryDef.create(
<queryDef schema={vars.targetSchema} operation="select">
<select>
<node expr="@std_id"/>
<node expr="@name"/>
</select>
<where>
<condition expr={conditionVar} />
</where>
</queryDef>
);

var allRecords = recordSet.ExecuteQuery();
for each (var rec in allRecords)

{
var var1=rec.std_id;

var var2=rec.name;

//your INSERT statement;
}

 

hope this helps.

View solution in original post

6 Replies

Avatar

Correct answer by
Level 2

Hi,

you can use queryDef  to fetch the data from targetSchema as shown below

 

var conditionVar="@age > 25";// example condition
var recordSet = xtk.queryDef.create(
<queryDef schema={vars.targetSchema} operation="select">
<select>
<node expr="@std_id"/>
<node expr="@name"/>
</select>
<where>
<condition expr={conditionVar} />
</where>
</queryDef>
);

var allRecords = recordSet.ExecuteQuery();
for each (var rec in allRecords)

{
var var1=rec.std_id;

var var2=rec.name;

//your INSERT statement;
}

 

hope this helps.

Avatar

Community Advisor

Hi,

 

You can use an update db activity to update the db. Fetching and inserting a row at a time via the app server won't be efficient.

What's the transformation?

 

Thanks,

-Jon

ID  FirstName LastName Email

1   Name1       Name12    Email1

2   Name2       Name22    Email2

3   Name3       Name32    Email3

 

i want to convert above table into

 

ID   AttributeName   AttributeValue

1     FirstName        Name1

1     LastName        Name12

1     Email                Email1

2     FirstName        Name2

2     LastName        Name22

2     Email                Email2

Avatar

Community Advisor
That can be done with workflow activities or sql, as outlined in the other thread you posted for this question.
I don't know how to use SQL activity for this. Any idea?