UnityObjects.UnityApplication UnityApp = new UnityObjects.UnityApplication(); if (UnityApp.Login("logo kullanıcı adı", "logo kullanıcı şifresi", firma no, dönem no) == true) { MessageBox.Show("bağlantı tamam"); UnityObjects.Data itemsalesp = UnityApp.NewDataObject(UnityObjects.DataObjectType.doSalesPriceItem); itemsalesp.New(); itemsalesp.DataFields.FieldByName("CARD_CODE").Value= "~"; // "~" işareti sırada ki card_code'yi vermek için itemsalesp.DataFields.FieldByName("OWNER_CODE").Value="5213351021"; itemsalesp.DataFields.FieldByName("PRICE").Value=278.00; itemsalesp.DataFields.FieldByName("UNIT_CODE").Value="ADET"; itemsalesp.DataFields.FieldByName("VAT_INCL").Value=0; itemsalesp.DataFields.FieldByName("CURRENCY").Value=160; itemsalesp.DataFields.FieldByName("DATE_STARTED").Value="01.01.2023"; itemsalesp.DataFields.FieldByName("DATE_ENDED").Value="31.12.2023"; itemsalesp.DataFields.FieldByName("END_TIME").Value=389757701; itemsalesp.DataFields.FieldByName("BRANCH").Value=-1; itemsalesp.DataFields.FieldByName("ALL_DIVISIONS").Value=1; UnityObjects.Lines division_list_lines = itemsalesp.DataFields.FieldByName("DIVISION_LIST").Lines; division_list_lines.AppendLine(); division_list_lines[division_list_lines.Count - 1].FieldByName("DIVCODES").Value=-1; if (itemsalesp.Post() == true) { MessageBox.Show("POST OK !"); } else { if (itemsalesp.ErrorCode != 0) { MessageBox.Show("DBError(" + itemsalesp.ErrorCode.ToString() + ")-" + itemsalesp.ErrorDesc + itemsalesp.DBErrorDesc); } else if (itemsalesp.ValidateErrors.Count > 0) { string result = "XML ErrorList:"; for (int i = 0; i < itemsalesp.ValidateErrors.Count; i++) { result += "(" + itemsalesp.ValidateErrors[i].ID.ToString() + ") - " + itemsalesp.ValidateErrors[i].Error; } MessageBox.Show(result); } } } else { MessageBox.Show("Bağlanamadı!"); }
Burada en önemli noktalardan birisi “UNIT_CODE” field alanının birim set değeri kodunu da databaseden çekmemiz gerektiği.
Bunun için SQL’den aşağıda ki sorgu sonucu dönen değeri buraya yazmamız lazım.
select CODE from LKSDB.dbo.LG_800_UNITSETL where UNITSETREF=(select UNITSETREF from LKSDB.dbo.LG_800_ITEMS where CODE='5213351021') and LINENR=1