The given key was not present in the dictionary in process transaction uipath

hi all,
I am un able to solve this error. i am facing this error when i tried to fetch the field item from the queues saved, I have checked for the multiple times if there are any spelling mistake, there is no spelling mistakes, but still iam facing this error. please refer below screenshot:

Hi ,

Can you check if the transactionItem variable is correctly being passed to the particular argument in the invoke workflow? is the issue only for the specific value?

iam using re framework for this and please check below invoke process work flow arguements

1 Like


Thanks. This looks good. can you provide the sample queue item and the value you are trying to fetch?

say agent id is the 1 among the field and i have given the below line for fetching the value:


Hi, @Manoj_sreekanth

Is there any chance that the agentid could be null when you actually got that error?
Can you also try to print different values maybe name and see if it works?
Also, are you printing this in the process workflow?

out of the 5 fields only name is printing sir, i just checked

1 Like

Hi @Manoj_sreekanth ,

Can you give a breakpoint on the log message and check what are the values being displayed in the local pane under specificcontent in the in_Transactionitem ?

also , please check once if you are referring to the correct queue ? also , if possible paste the values that is being displayed under specific content in the locals pane?

@Manoj_sreekanth Once you check in config file after queue name is there any empty space.

only 2 fields have popped up out of 5 in the specific content

no i have trimmed it.

can you check the queue name in the same pane? or you can use in_Transactionitem.queuename to print the current queue name.

Looks like the current transaction item has only two fields ,
please check the queue item name and check the corresponding queue item that will be in progress.

looks like it is picking proper queue name.

Hello Vishnu,

it is working fine now, i deleted the entire queue and added it again. it works fine presenting all the field names and its values

for anybody new for this issue, kindly check your queue items from orchestrator, you’re expected to provide entire field name that is present in the “in_transactionitem.specfic item(Queueitem).tostring”

thanks for your valuable time and cheers.

1 Like

In one place you show AgentID but in another you show Agent ID. These must be consistent.

Great to hear :slight_smile: Thanks!

1 Like

Also, i need one more help here:

  1. i.e., these are basically real time data from the application.
  2. the application involves 6 xlsx sheets and 1 master sheet(seperate)
  3. i am supposed to save all these 6 xlsx sheets as queue and to identify each queues (done)
  4. i have added an extra colum in each downloaded xlsx i download from the application (done)
  5. so at this stage initialization(launching app–>adding excels(real time data to queue)
  6. now i am the process transaction, i need to call each queue based on the extra column (MU_Units) and gotta perform several activities for each of the mu units.
  7. here i want to know the expression that i need to use inside the switch condition to invoke particular MU_unit and the entire queue belonging to that mu unit (e.g: MU_unit: 200 CIS FS- and so on) 6 units are there.

suggestions please.

1 Like

Hi, @Manoj_sreekanth

You can simple use the for each row - passing each data table

  1. first use getsheets to get the sheets
  2. once sheets are retrieved , use for each to iterate the sheets.
  3. inside of it , use read range to read the DT
  4. use for each row to iterate through the DT and then inside of you can have a switch
  5. in switch , you can give expression row(“MU_Units”).tostring.
  6. then in the case , you can give the values that you will get in MU_units as the case.

Please see the below image :slight_smile:

Hope it helps :slight_smile:

Please mark it as solution if it resolves the issue. Thanks !

sure, iam trying with that

1 Like


1 Like