Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Akışı içeri aldığınızda Sql Bağlantı listesi ve Veri kaynağı düzenlenmelidir. Veri kaynağında NWFLOGMASTER tablosundaki FIRSTVERSIONSTORAGEID kullanılarak yayınlanmış bütün efatura akışlarını açılır listede gösterilmesi sağlanmıştır. Akışı içeri aldığınızda öncelikle bu iki bölümü kendi yapınıza göre düzenlemeniz gerekmektedir. FIRSTVERSIONID bilgisi NWFSTORAGE tablosundan da alınabilir.


Image Removed

Image Removed




Kod Örneği:

 

string test="",siraNo="",malzemeHizmet="",MalzemeHizmetKodu="",MalzemeHizmetAciklama="",RowId="";
double miktar=0,BirimFiyat=0,IskontoTutari=0,KdvOrani=0,KdvTutari=0,MalzemeHizmetTutari=0;
int instanceUniqueId=0,id=0;
try{
//AÇILIR PENCEREDE SEÇİLEN KAYITLAR DÖNDÜRÜLÜYOR
for (int i = 0; i <AkisListesi.Content.Items.Count; i++)
{
//AÇILIR LİSTEDEKİ HEM ID KOLONUNDAKİ VERİ HEM DE INSTANCEUNIQUEID BİLGİLERİ BİR DEĞİŞKENE ATILIYOR. PORTALDA GÖRÜLEN ID INSTANCEUNIQUEID DEĞİŞKENİDİR.
try{id=AkisListesi.Content.Items[i][AkisListesi_Columns.ID].ToInt();}catch{id=0;}
try{instanceUniqueId=AkisListesi.Content.Items[i][AkisListesi_Columns.INSTANCEUNIQUEID].ToInt();}catch{instanceUniqueId=0;}

//ID' YE GORE BUTUN VERİLER BUTUNDATA DEGISKENINE ALINIYOR.
var butunData = LFlowUtils.GetJobAllVariablesValue(id);

//BUTUNDATAYA ALINAN AKIŞ BİLGİLERİ ICERISINDE SADECE grdInvoiceLine TABLOSUNUN VERILERI BIR DEGISKENE ALINIYOR
var eFaturaDetay=(List<Dictionary<string, object>>)butunData["grdInvoiceLine"];
if(instanceUniqueId>0 && butunData.Assigned() && eFaturaDetay.Count>0)
{
//grdInvoiceLine TABLOSUNDAKİ KOLONLARIN BİLGİLERİ KOLON KOLON / SATIR SATIR DEĞİŞKENLERE AKTARILIYOR.
eFaturaDetay.ForEach(x=>
{x.ForEach(y=>{
if(y.Key == "grdInvoiceLine__SiraNo")
siraNo =  (y.Value.Assigned() ?  y.Value.ToString() : "");

if(y.Key == "grdInvoiceLine__MalzemeHizmet")
malzemeHizmet =  (y.Value.Assigned() ?  y.Value.ToString() : "");

if(y.Key == "grdInvoiceLine__MalzemeHizmetKodu")
MalzemeHizmetKodu =  (y.Value.Assigned() ?  y.Value.ToString() : "");

if(y.Key == "grdInvoiceLine__MalzemeHizmetAciklama")
MalzemeHizmetAciklama =  (y.Value.Assigned() ?  y.Value.ToString() : "");

if(y.Key == "RowId")
RowId =  (y.Value.Assigned() ?  y.Value.ToString() : "");

if(y.Key == "grdInvoiceLine__miktar")
miktar =  (y.Value.Assigned() ?  Convert.ToDouble(y.Value) : 0);

if(y.Key == "grdInvoiceLine__BirimFiyat")
BirimFiyat =  (y.Value.Assigned() ?  Convert.ToDouble(y.Value) : 0);

if(y.Key == "grdInvoiceLine__IskontoTutari")
IskontoTutari =  (y.Value.Assigned() ?  Convert.ToDouble(y.Value) : 0);

if(y.Key == "grdInvoiceLine__KdvOrani")
KdvOrani =  (y.Value.Assigned() ?  Convert.ToDouble(y.Value) : 0);

if(y.Key == "grdInvoiceLine__KdvTutari")
KdvTutari =  (y.Value.Assigned() ?  Convert.ToDouble(y.Value) : 0);

if(y.Key == "grdInvoiceLine__MalzemeHizmetTutari")
MalzemeHizmetTutari =  (y.Value.Assigned() ?  Convert.ToDouble(y.Value) : 0);

});
//SATIR VERİLERİ DEĞİŞKENE ATILDIKTAN SONRA TABLOYA AKTARILMASI İÇİN DICTIONARY DEĞİŞKENİ İLE SATIR OLARAK TABLOYA EKLENİYOR.
Dictionary<string, object> satir = new Dictionary<string, object>();
satir.Add(TabloVerileri_Columns.siraNo,siraNo);
satir.Add(TabloVerileri_Columns.malzemeHizmet,malzemeHizmet);
satir.Add(TabloVerileri_Columns.MalzemeHizmetKodu,MalzemeHizmetKodu);
satir.Add(TabloVerileri_Columns.MalzemeHizmetAciklama,MalzemeHizmetAciklama);
satir.Add(TabloVerileri_Columns.RowId,RowId);
satir.Add(TabloVerileri_Columns.miktar,miktar);
satir.Add(TabloVerileri_Columns.BirimFiyat,BirimFiyat);
satir.Add(TabloVerileri_Columns.IskontoTutari,IskontoTutari);
satir.Add(TabloVerileri_Columns.KdvOrani,KdvOrani);
satir.Add(TabloVerileri_Columns.KdvTutari,KdvTutari);
satir.Add(TabloVerileri_Columns.MalzemeHizmetTutari,MalzemeHizmetTutari);
satir.Add(TabloVerileri_Columns.INSTANCEUNIQUEID,instanceUniqueId);
satir.Add(TabloVerileri_Columns.LogMasterId,id);
TabloVerileri.Content.AddRow(satir);
//SATIR BURADA BİTİP DİĞER SATIRA GEÇİLİYOR.
});
}
//BUTUN İŞLEMLER BURADA BİTİYOR.
Durum.Value="İşlem Başarılı";
}}
//HATA OLDUĞUNDA ÖN YÜZE HATAYI GETİRMEDEN DURUM DEĞİŞKENİNE HATA EKLENİYOR.
catch(Exception Ex){Durum.Value="Hata="+Ex.Message.ToString();}

...