Hi Team,
I have some doubt regarding the excel data table, I have the excel data table in below format, where I need to get row 3 value based on row 2 value.
if row 2 have “Family” then call the row 3 value.
please find the below excel screen shot for the same.
Stent ID (mm)
Stent Length (mm)
Max Stent ID (mm)
Compliance Information
Delivery System Platform1
Delivery System Platform2
Symbol (REF)
Product
Product
Product
Product
Product
Family
Family
2.0
8
3.5
01933-733-PKG
RX
DES
SYM_REF-2
FamilyTable_2.xaml (9.7 KB)
1 Like
Hi @SDSurajDubey
Read the excel and store in dt1
Use an if condition
dt1.Rows(0).ItemArray.Contains(“Family”)
If this condition is true
Then in Then section
Use the assign activitiy to get row 3 value in array
arr1= dt1.Rows(1).ItemArray()
Regards
Nived N
Hi Nived,
The statement “dt.Rows(0).ItemArray.Contains(“Family”)” gives me compiler error.
Error is : ‘Rows’ is not a member of ‘System.Data.DataRow’
Attached .xaml file here with.
FamilyTable_2.xaml (9.7 KB)
Hi @SDSurajDubey
Kindly check whether the dt variable is datatable or datatrow
It should be datatable
ppr
(Peter Preuss)
December 9, 2021, 9:25am
6
@SDSurajDubey
it looks like the implementation is driving away from the intention / requirement
it looping over the rows
But in the condition it is always checking first row (lets ignore the validation issue so far)
within the then case it is always fetching the second row value
depending on what you need you can adopt
Option 1: Looping:
you had set the index output from for each to the var name index
Option 2: Index calculation:
get the index form the row containing Familiy within the col values
grab next row, based on calculated index + 1
Also we would recommend to resepcify the requirement and define what is to grab (row, data column value(s)…
1 Like
Hi Peter,
Thanks for the response.
The file is run success fully. But I did not got the out out.
We got output link : System.Object .
Thanks,
Suraj Dubey
FamilyTable_2.xaml (10.2 KB)
ppr
(Peter Preuss)
December 9, 2021, 9:45am
8
check the write line in screeshot (yellow marked). We use String.Join(…
Hi Peter,
I used the same but still same out put.
I have created one more file in that i got the out put but in that out put family filter is not working.
Attached here for your reference
Test_family_2.xaml (9.0 KB)
.
ppr
(Peter Preuss)
December 9, 2021, 9:59am
10
Can you do following:
Sharing the sample data with us ( feel free to anonymize the condidential data)
Hi Peter,
It is working now.
But I got all the values instead of only family rows values.
Thanks,
Suraj Dubey
Hi Peter,
I am not able to attached excel sheet here.
Please find below example of my excel sheet.
Max Stent ID (mm)
Compliance Information
Delivery System Platform1
Delivery System Platform2
Symbol (REF)
Symbol (UBD)
Symbol (LOT)
Product
Product
Product
Family
Family
Family
Family
3.5
01933-733-PKG
RX
DES
SYM_REF-2
SYM_UBD-1
SYM_LOT-2
Max Stent Id (mm), Compliance Information etc are headers.
Thanks,
Suraj Dubey
Test_family_3.xaml (9.1 KB)
Hi Team,
I am able to print all the row values. But not specific value.
Please see the attached .xaml file. for the same.
Below is the example for my excel.
Stent ID (mm)
Stent Length (mm)
Max Stent ID (mm)
Compliance Information
Delivery System Platform1
Delivery System Platform2
Symbol (REF)
Symbol (UBD)
Symbol (LOT)
Symbol (DOM)
Product Description
Product
Product
Product
Product
Product
Family
Family
Family
Family
Family
Family
2.0
8
3.5
01933-733-PKG
RX
DES
SYM_REF-2
SYM_UBD-1
SYM_LOT-2
SYM_DOM-4
ZOTAROLIMUS_ELUTING_CORONARY_STENT_SYSTEM
[Test_family_3.xaml
attachment](upload://2vJvdgZL0cmoqaMk0bLDEmE2mPP.xaml) (9.3 KB)
Srini84
(Srinivas)
December 9, 2021, 2:58pm
15
@SDSurajDubey
Check below reference by calling the previous row with a condition
Link for Previous value to get
You can change that as per your requirement
Hope this will help you
Thanks
FamilyTable_5.xaml (11.5 KB)
Hi Team,
Not able to get only Family below value. Based on my file I am able to take all the row value.
Help me to change my flow, So I can able to take below of the family row data.
Stent Length (mm)
Max Stent ID (mm)
Compliance Information
Delivery System Platform1
Delivery System Platform2
Symbol (REF)
Symbol (UBD)
Symbol (LOT)
Product
Product
Product
Product
Family
Family
Family
Family
8
3.5
01933-733-PKG
RX
DES
SYM_REF-2
SYM_UBD-1
SYM_LOT-2
ppr
(Peter Preuss)
December 10, 2021, 10:21am
18
have a check if following do match your requirement.
Assumption:
first row - column names
second row - Product / Family label
read in excel into a datatable - with read range | ticked - AddHeaders - dtData
assign activity:
LHS: arrFamilyIndexes | Int32( ) - an int Array
RHS:
Enumerable.Range(0,dtData.Columns.Count).Where(Function (x) dtData.Rows(0)(x).toString.toUpper.Contains("FAMILY")).toArray
then retrieve the family values from third row by:
Assign Acitivity:
LHS: arrFamilyValues | String( ) - a string array
RHS:
arrFamilyIndexes.Select(Function (x) dtData.Rows(1)(x).toString).toarray
Hi Peter,
Thanks a lot. Its working.
Thanks,
Suraj Dubey
Get Value.xaml (7.1 KB)
system
(system)
Closed
December 13, 2021, 11:41am
20
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.