How can we use get ([key or content ]) passing content as a parameter? | Community
Skip to main content
pierrec70731455
Level 4
March 22, 2019
Solved

How can we use get ([key or content ]) passing content as a parameter?

  • March 22, 2019
  • 6 replies
  • 6190 views

Hi,

in the documentation it is quite clear how to load the entity corresponding to a given schema and key :

var delivery = NLWS.nmsDelivery.get("12435")

But I don't understand how/why we can pass a content as a parameter?

Kind regards,

Pierre

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by pierrec70731455

Hi Jonas,

this question is indeed for Classic, I'm unable to change the tag now.

The load(key) method allows us to obtain an entity based on the key (id) of the schema : load

With the create([content]) method we can generate a new entity for a schema based on the content we send : create

So my question is how can we use the get([key or content]) with content as a parameter : get

In the doc they explain clearly how to get an entity with a get(key), but nothing on how to use get(content).

Kind regards,

Pierre

6 replies

Level 3
March 25, 2019

Hi,

This question is related to Classic and not Standard right? (the post is tagged as standard)

  • What is the context? JSSP/workflow/etc?
  • What do you mean by "pass a content as a parameter"?

Regards,

Jonas

pierrec70731455
pierrec70731455AuthorAccepted solution
Level 4
March 25, 2019

Hi Jonas,

this question is indeed for Classic, I'm unable to change the tag now.

The load(key) method allows us to obtain an entity based on the key (id) of the schema : load

With the create([content]) method we can generate a new entity for a schema based on the content we send : create

So my question is how can we use the get([key or content]) with content as a parameter : get

In the doc they explain clearly how to get an entity with a get(key), but nothing on how to use get(content).

Kind regards,

Pierre

pablo_rosero1
Level 9
March 26, 2019
Florian_Courgey
Level 4
March 27, 2019

Hi,

We do have the same question.. This is what we tried so far, but it always gives us an empty recipient as a result

var recipient = NLWS.nmsRecipient.get({

  where: {

    condition: {expr: "@email= 'my@email.com'"}

  }

});

var recipient = NLWS.nmsRecipient.get({ 

    condition: {expr: "@email= 'my@email.com'"}

});

var recipient = NLWS.nmsRecipient.get({ 

    expr: "@email= 'my@email.com'"

});

var recipient = NLWS.nmsRecipient.get({ 

    email: 'my@email.com'

});

logInfo('recipient: '+recipient);

logInfo('id: '+recipient.id);

logInfo('email: '+recipient.email);

It always return a [WppObject] (a recipient as a JS object) with empty properties:

recipient: [object WppObject]

id: 0

email:

Tested in a javascript activity of a workflow, but can be used anywhere (JSSP, web apps...)

Thank you

Level 3
April 1, 2019

I find the behaviour strange. This for instance actually creates a new recipient for me:

var recipient = NLWS.nmsRecipient.get(

  {recipient: {

  email: "support@adobe.com"

})

I only noticed cause it's throwing an error in the instance I tried it (which is expected, duplicate key on ID field).

The same but for deliveries using internal name returns the correct record as expected (NLWS.nmsDelivery.get using internalName). Haven't looked into it further though. I usually use queryDef for these kinds of things, so that might be an option for you as well.

Regards,

Jonas

Jonathon_wodnicki
Community Advisor
Community Advisor
April 1, 2019

Hi,

Pierre:

I think 'key or content' is mistranslated French here, and is meant to read 'numeric id or string key'.

Jonas:

That's a bug in the software.

Thanks,

-Jon