Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

An issue with creating backup packages

d-wnuk
Level 2
Level 2

Hi,

I'm trying to set the backup workflows up using the following document:
https://docs.campaign.adobe.com/doc/AC/en/technicalResources/Technotes/AdobeCampaign_How_to_export_p...

https://docs.campaign.adobe.com/doc/AC/en/technicalResources/Technotes/AdobeCampaign_How_to_export_p...

However, I have stuck on the step when I have to generate the packages from specification. First, I determined the query:

var query = xtk.queryDef.create(

  <queryDef operation="select" schema="nms:delivery">

    <select>

      <node expr="@label"/>

      <node expr="@internalName"/>

    </select>

    <where>

      <condition boolOperator="OR" expr="@id != 0"/>

    </where>

  </queryDef>

)

var res = query.ExecuteQuery()

Then, I initialize the empty array and push all @label nodes there. Ultimately I want to include all attributes in the package but as for now it would be good to start from small steps.

Finally, I try to generate package:

var specFile = xtk.specFile.create(deliveryArray)

var package = specFile.GenerateDoc()

But I get the error message that says:

'JavaScript: cannot convert the value to an XML document.

Function 'create', arugment 0: cannot convert argument to an XML document.'

I also tried a different approach with assigning package specification to a variable and then passing it to specfile.create method but the output was the same.

Thanks in advance for any advices.

Best regards,

Dominik

1 Accepted Solution
Amit_Kumar
Correct answer by
Community Advisor
Community Advisor

Hi Dominik,

You are not following the instruction correctly.

  • create a package definition in your instance.
  • Add required content to this package definition in your instance.
  • write the required query as mentioned in the document to get the list of package from package definition i.e. from the specFile schema.

var query = xtk.queryDef.create(

<queryDef schema="xtk:specFile" operation="select">

<select>

<node expr="@name"/>

<node expr="@namespace"/>

<node expr="data"/>

</select>;

</queryDef>

)

var specFileXML = query.ExecuteQuery()

  • add a condition in this query to select required packages.
  • Use below script to generate xml docs to export the package.

var specFile = xtk.specFile.create(specfileXml)

var package = specFile.GenerateDoc()

  • The package XML needs to be saved to a file.
  • The file must have the <?xml> header.
  • The saveXmlFile function writes the contents to a file in XML format.

var fileName = "/tmp/myPackage.xml"

saveXmlFile(package, fileName)

Regards,

Amit

View solution in original post

4 Replies
Amit_Kumar
Correct answer by
Community Advisor
Community Advisor

Hi Dominik,

You are not following the instruction correctly.

  • create a package definition in your instance.
  • Add required content to this package definition in your instance.
  • write the required query as mentioned in the document to get the list of package from package definition i.e. from the specFile schema.

var query = xtk.queryDef.create(

<queryDef schema="xtk:specFile" operation="select">

<select>

<node expr="@name"/>

<node expr="@namespace"/>

<node expr="data"/>

</select>;

</queryDef>

)

var specFileXML = query.ExecuteQuery()

  • add a condition in this query to select required packages.
  • Use below script to generate xml docs to export the package.

var specFile = xtk.specFile.create(specfileXml)

var package = specFile.GenerateDoc()

  • The package XML needs to be saved to a file.
  • The file must have the <?xml> header.
  • The saveXmlFile function writes the contents to a file in XML format.

var fileName = "/tmp/myPackage.xml"

saveXmlFile(package, fileName)

Regards,

Amit

View solution in original post

d-wnuk
Level 2
Level 2

Hi Amit,

Thanks for the listing all steps, the process is clear for me now!

Best regards,

Dominik

ankurm40172185
Level 3
Level 3

HI Amit

I have a question on this; where can i access the saved file; what would be the path? I'd like to download and ftp that.