Update of CustCnt Throws Exception in Data Directive 10.2.700

Getting this error when trying to update CustCnt in a Data Directive (SysTaskLog.Standard).

An error occurred while updating the entries. See the inner exception for details. / System.Data.SqlClient.SqlException (0x80131904): Violation of PRIMARY KEY constraint ‘PK_CustCnAttr’. Cannot insert duplicate key in object ‘Erp.CustCnAttr’. The duplicate key value is (EUROPE, 115, , 2, ).

I found Jose’s fix on the WCF Update of CustCnt Throws exception post, but it did not fix my issue. Any assistance would be greatly appreciated.

Here is my code with his in the middle commented out:

              using(Erp.Contracts.CustCntSvcContract svcCust = Ice.Assemblies.ServiceRenderer.GetService<Erp.Contracts.CustCntSvcContract>(Db))
              {  
                Erp.Tablesets.CustCntTableset ccntTs = new Erp.Tablesets.CustCntTableset();
                ccntTs = svcCust.GetByID((int)results.Tables[0].Rows[i]["CustCnt_CustNum"], (string)results.Tables[0].Rows[i]["CustCnt_ShipToNum"], (int)results.Tables[0].Rows[i]["CustCnt_ConNum"]);
                if (ccntTs != null)
                {
                  foreach (var custCnt in ccntTs.CustCnt)
                  {
                    if (custCnt.Company == (string)results.Tables[0].Rows[i]["Customer_Company"]);    //callContextClient.CurrentCompany)
                    {
                      if (custCnt.ConNum == (int)results.Tables[0].Rows[i]["CustCnt_ConNum"]);   
                      {
               /*
                        Erp.Tablesets.CustCntRow backUpRow = new Erp.Tablesets.CustCntRow();
                        var fields = backUpRow.GetType().GetProperties(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public);
                        foreach(var field in fields)
                        {
                            if (field.PropertyType == typeof(System.Runtime.Serialization.ExtensionDataObject))
                                continue;
                            var fieldValue = field.GetValue(custCnt);
                            field.SetValue(backUpRow, fieldValue);
                        }
                        //ccntTs.CustCnt.Add(backUpRow);
                */
                        custCnt["Turis_ID_c"] = (long)acTuris.data.id;
                        custCnt["TurisToUpdate_c"] = false;
                        custCnt["TurisUpdated_c"] = DateTime.Now;
                        custCnt.RowMod = "U";
                        svcCust.Update(ref ccntTs);
                      }  // if (custCnt.ConNum == (int)results.Tables[0].Rows[i]["CustCnt_ConNum"]); 
                    }  // if (custCnt.Company == (string)results.Tables[0].Rows[i]["Customer_Company"]); 
                  }  // foreach (var custCnt in ccntTs.CustCnt)


                }  // if (custTs != null)
              }  // using(Erp.Contracts.CustomerSvcContract svcCust