Quantcast
Channel: Project Customization and Programming forum
Viewing all articles
Browse latest Browse all 5347

custom field update using PSI

$
0
0

HI,

Guid l = new Guid();

            foreach (WebSvcLookupTable.LookupTableDataSet.LookupTablesRow item in ltDS.LookupTables)
            {
                if ((String)item[ltDS.LookupTables.LT_NAMEColumn] == "TestL")
                {
                    l = (Guid)item[ltDS.LookupTables.LT_UIDColumn];
                    break;
                }
            }



            Guid[] lutUid = { l };
            ltDS = svLookTable.ReadLookupTablesByUids(lutUid, false, 1033);

            Guid LTValue = new Guid();
     
         

            foreach (WebSvcLookupTable.LookupTableDataSet.LookupTableTreesRow item in ltDS.LookupTableTrees)
            {
                if ((String)item[ltDS.LookupTableTrees.LT_VALUE_TEXTColumn] == DropDownList1.SelectedValue.ToString())
                {
                    LTValue = (Guid)item[ltDS.LookupTableTrees.LT_STRUCT_UIDColumn];
                    ////lblTest.Text = LTValue.ToString();
                    break;
                }
            }

         

            Guid _CustomFieldGuid = new Guid("43092e83-1937-e411-b0d9-005056872de4");

            bool found = false;

            for (int x = 0; x < rsDataset.ResourceCustomFields.Count; x++)
            {
                var customField = rsDataset.ResourceCustomFields[x];
                if (_CustomFieldGuid == customField.MD_PROP_UID)
                {
                    customField.CODE_VALUE = LTValue;
                    found = true;
                    break;
                }
            }

            //Guid resGuid = new Guid("7680cf81-e62c-e411-8fe1-005056872de4");
            if (!found)
            {
                WbSvcResource.ResourceDataSet.ResourceCustomFieldsRow cfRow = rsDataset.ResourceCustomFields.NewResourceCustomFieldsRow();
                WbSvcResource.ResourceDataSet.ResourceCustomFieldsRow cfRow2 = rsDataset.ResourceCustomFields.NewResourceCustomFieldsRow();
                cfRow.RES_UID = rsDataset.Resources[0].RES_UID;
                cfRow.CUSTOM_FIELD_UID = Guid.NewGuid();
                cfRow.MD_PROP_UID = _CustomFieldGuid;
                cfRow.CODE_VALUE = LTValue;
                rsDataset.ResourceCustomFields.AddResourceCustomFieldsRow(cfRow);

             }


            svResource.CheckOutResources(new Guid[] { rsDataset.Resources[0].RES_UID });
            svResource.UpdateResources(rsDataset, false, true);

Where I am wrong in above code.. 

I need to update multi valued custom field. 

Please suggest what needs to be modified.

Thanks,

Rohit


Viewing all articles
Browse latest Browse all 5347

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>