Fetch a another value if one value is not available

Hi ,

I am fetching a value from json If a particular data is not available i need to fetch a another value. How should i approach this ?

ModifiedDate =DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“modificationHistory”)(“assignedTeamsAt”).ToString -if this is not available i need to do this

ModifiedDate =DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“ModifiedDate”).ToString

Hi @tharani.natarajan

Assuming DeserializeJsonOutputGetConversationID(“data”) returns a JObject
var jsonOutput = DeserializeJsonOutputGetConversationID(“data”)

Check if the first value is available
if jsonOutput(“attributes”)(“modificationHistory”)(“assignedTeamsAt”) IsNot Nothing Then
ModifiedDate = jsonOutput(“attributes”)(“modificationHistory”)(“assignedTeamsAt”).ToString
else
ModifiedDate = jsonOutput(“attributes”)(“ModifiedDate”).ToString
End If

Hope it helps!!

Hi @tharani.natarajan
Try this:

Deserialize JSON (Output: jsonOutput)

Assign:
ModifiedDate = ""

If (Condition: jsonOutput.ContainsKey("data") AndAlso jsonOutput("data").ContainsKey("attributes") AndAlso jsonOutput("data")("attributes").ContainsKey("modificationHistory") AndAlso jsonOutput("data")("attributes")("modificationHistory").ContainsKey("assignedTeamsAt"))
    Assign:
    ModifiedDate = jsonOutput("data")("attributes")("modificationHistory")("assignedTeamsAt").ToString
Else
    Assign:
    ModifiedDate = jsonOutput("data")("attributes")("ModifiedDate").ToString

Hope it helps!!

* If DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“modificationHistory”).ContainsKey("assignedTeamsAt")
** Then Assign ModifiedDate =DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“modificationHistory”)(“assignedTeamsAt”).ToString
** Else Assign ModifiedDate =DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“ModifiedDate”).ToString
1 Like

By the way, it is possible to do it all in one statement but it can look messy…

Assign yourVar = if(condition,then,else)

So it would look like:

Assign ModifiedDate = if(DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“modificationHistory”).ContainsKey("assignedTeamsAt"),DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“modificationHistory”)("assignedTeamsAt"),DeserializeJsonOutputGetConversationID(“data”)(“attributes”)(“ModifiedDate”).ToString)