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

pierrec70731455

22-03-2019

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

Accepted Solutions (1)

Accepted Solutions (1)

pierrec70731455

25-03-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

Answers (5)

Answers (5)

wodnicki

MVP

01-04-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

jonasn92134656

01-04-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

Florian_Courgey

MVP

27-03-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

jonasn92134656

25-03-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