If more items: Value cannot be null. Parameter name: String

Hi! @nadim.warsi

I am on assignment 2 in level 3.

I am able to upload all WIID to the queue in orchestrator but when I am getting to the Get transaction data workflow I get this error: If more items: Value cannot be null. Parameter name: Source.

I hope that someone can help me with this as I dont understand what the error means at all…

:slight_smile:

Your WIList is empty so its giving that error. You can check that by using a WriteLine just before this if.
The issue may be that in the invoke of GetTransactionData you have not assignment the value of the in argument

Great thanks!

How can I trim this value so I only get first name and last name?

Firstname Lastname
Client Country: Country

1 Like

I tried this

Left(InStr(newLine),(InStr(newLine)-1).ToString

@nadim.warsi hope so much you can help me :slight_smile:

1 Like

just split on basis of new line and hen for 0 split basis of space and result will be

FN = text.Split((Environment.NewLine).ToCharArray)(0).Split(" “c)(0).ToString
and
LN = text.Split((Environment.NewLine).ToCharArray)(0).Split(” "c)(1).ToString

Hi @nadim.warsi

I am not sure how I should assign these?

just retype the " " quotes
as in copy it takes as a special char

Hi again,

I have been able to extract Client ID and Client Country but I am missing Client Name.

So that is why I want to keep the first line and then delete the next line which always will be “Client Country: XXX”

ok, simply use the below in your code after you are doing the getText. This will get you all 3 values

Hi again,

I am just afraid to change the code as everything else works. I only need first and last name…no way to do that in another way?

1 Like

what is the name of your variable which holds the text?
Means what you are setting in the messagebox?
Ill give you the expression :slight_smile:

out_ClientCountry :slight_smile: (So the our argument Out_ClientCountry contains the message I pasted above “Veda Blaylock etc…”

1 Like

ok, but should that not be the second part ? but you want the name?

For the Name you can use this expression:
out_ClientCountry.Split(Environment.NewLine.ToArray)(0).Trim

I basically only need the client name, and in this case it is Veda Blaylock

What kind of arguments/variables should I have? :slight_smile:

than you so,sooo much for helping me a lot!!

actually to make it simple you just split and take the vales from the GetText variable and then assign each value to the out variables ID, Name and Country.

Not sure why you are getting the Name from the out_ClientCountry argument :slight_smile:

Let me know if it works :slight_smile:

Hi :slight_smile:

Unfortunately I end up with an empty message box…

I think you have empty entries Try this:

out_ClientCountry.Split(Environment.NewLine.ToArray,StringSplitOptions.RemoveEmptyEntries)(0).Trim

or switch to second element after split :slight_smile:
out_ClientCountry.Split(Environment.NewLine.ToArray,StringSplitOptions.RemoveEmptyEntries)(1).Trim

I will try both codes, and what I do is that I have an assign activity where I put one of the codes in the Value and then I assign it to out_ClientNameTrue. After that I have a write line and message box to keep track :slight_smile:

The first code worked. AMAZING!

Thank you so much :slight_smile:

2 Likes