Lobject Satış Siparişi Hata

Gönderen Konu: Lobject Satış Siparişi Hata  (Okunma sayısı 1209 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı cengiz_ozdemir

  • Yeni Kullanıcı
  • *
  • Karma: 0
Lobject Satış Siparişi Hata
« : 03.09.2014, 13:01 »
Lines detay = siparis.DataFields.FieldByName("TRANSACTIONS").Lines;
            if (detay.AppendLine())
            {
                     for (int i = 0; i < Convert.ToInt32(YeniSatisSiparisi.sipariscount) - 1; i++)
                {
                    detay.FieldByName("TYPE").Value = 0;
                    detay.FieldByName("MASTER_CODE").Value = YeniSatisSiparisi.kod.ToString();
                    detay.FieldByName("QUANTITY").Value = YeniSatisSiparisi.miktar.ToString();
                    detay.FieldByName("PRICE").Value = YeniSatisSiparisi.tutar.ToString();
                    detay.FieldByName("TOTAL").Value = YeniSatisSiparisi.toplamtutar.ToString();
                    detay.FieldByName("UNIT_CODE").Value = YeniSatisSiparisi.birim.ToString();
                    //  detay[0].FieldByName("PC_PRICE").Value = "Tutar";
                    //  detay[0].FieldByName("TOTAL_NET").Value = "Toplam Tutar";
                    detay.FieldByName("VAT_RATE").Value = YeniSatisSiparisi.kdv.ToString();
                    detay.FieldByName("VAT_INCLUDED").Value = 1; //KDV Dahil
                      }

            }

Satış Siparişine detay eklerken  ;
 
-   List index out of bounds (1)

  her satırda  hatayı veriyor. Bu hatayı sizce neden veriyordur yardımcı olur musunuz ?

Çevrimdışı ByBirol®

  • Logo Sistem Administrator
  • Logo Uzmanı
  • *****
  • Karma: 18
  • admin@artibilisim.com Logo Çözüm Ortağı
Ynt: Lobject Satış Siparişi Hata
« Yanıtla #1 : 03.09.2014, 14:16 »
Bunları gride mi çekiyorsun , öyle ise son satır özelligini kapat .Döngü boş satırdan index out of getiriyor olabilir .

Çevrimdışı cengiz_ozdemir

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Lobject Satış Siparişi Hata
« Yanıtla #2 : 03.09.2014, 14:28 »
Satırları Grid'ten çekip satırlara aktarmak istiyorum. Bu yüzden Satır Sayısı kadar döndürüp yazdırmaya çalışıyorum fakat bu hata çıkıyor. Tek Satırlık bir veri girdiğimde yani ;

  if (detay.AppendLine())
            {
                    detay[0].FieldByName("TYPE").Value = 0;
                    detay[0].FieldByName("MASTER_CODE").Value = YeniSatisSiparisi.kod.ToString();
                    detay[0].FieldByName("QUANTITY").Value = YeniSatisSiparisi.miktar.ToString();
                    detay[0].FieldByName("PRICE").Value = YeniSatisSiparisi.tutar.ToString();
                    detay[0].FieldByName("TOTAL").Value = YeniSatisSiparisi.toplamtutar.ToString();
                    detay[0].FieldByName("UNIT_CODE").Value = YeniSatisSiparisi.birim.ToString();
                    detay[0].FieldByName("PC_PRICE").Value = "Tutar";
                    detay[0].FieldByName("TOTAL_NET").Value = "Toplam Tutar";
            }

Dediğim zamanda aynı hatayı veriyor

Çevrimdışı ByBirol®

  • Logo Sistem Administrator
  • Logo Uzmanı
  • *****
  • Karma: 18
  • admin@artibilisim.com Logo Çözüm Ortağı
Ynt: Lobject Satış Siparişi Hata
« Yanıtla #3 : 03.09.2014, 14:46 »
Gridin Devex mi Datagridmi ,Gridi select ile doldurudunda en altda boş bir satır varmı , INDEX 'i ya bunda yada kodlarındaki hatadan alırsın .

Çevrimdışı cengiz_ozdemir

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Lobject Satış Siparişi Hata
« Yanıtla #4 : 03.09.2014, 15:41 »
Evet Devexpress Gridview. Son satır boş değil. Elle direk girdiğimde 1'den fazla satır girmeme izin vermiyor.
           
           
            Data siparis = UnityApp.NewDataObject(DataObjectType.doSalesOrderSlip);
            siparis.New();

            siparis.DataFields.FieldByName("NUMBER").Value = YeniSatisSiparisi.saticikodu ;
            siparis.DataFields.FieldByName("DATE").Value = YeniSatisSiparisi.starih ;
            siparis.DataFields.FieldByName("ARP_CODE").Value = YeniSatisSiparisi.sfirmakodu ;
            siparis.DataFields.FieldByName("SALESMAN_CODE").Value = YeniSatisSiparisi.saticikodu ;
            siparis.DataFields.FieldByName("NOTES1").Value = YeniSatisSiparisi.snot1 ;
            siparis.DataFields.FieldByName("NOTES2").Value = YeniSatisSiparisi.snot2;


            siparis.DataFields.FieldByName("ORDER_STATUS").Value = 4; //ÖDeme
            siparis.DataFields.FieldByName("WITH_PAYMENT").Value = 1; //ÖDeme
           
           Lines detay = siparis.DataFields.FieldByName("TRANSACTIONS").Lines;
            if (detay.AppendLine())
            {
               
                    detay[0].FieldByName("TYPE").Value = 0;
                    detay[0].FieldByName("MASTER_CODE").Value = "0006";
                    detay[0].FieldByName("QUANTITY").Value = "1";
                    detay[0].FieldByName("PRICE").Value = "100";

                    detay[1].FieldByName("TYPE").Value = 0;
                    detay[1].FieldByName("MASTER_CODE").Value = "0006";
                    detay[1].FieldByName("QUANTITY").Value = "1";
                    detay[1].FieldByName("PRICE").Value = "200";
                 
                //}

            }
            siparis.DataFields.FieldByName("ITEXT").Value = YeniSatisSiparisi.sektrabilgi;

            ValidateErrors err = siparis.ValidateErrors;

            if (siparis.Post())
            {
                MessageBox.Show("Sipariş Eklendi");
            }
            else
            {
                MessageBox.Show("Sipariş Eklenemedi. Hata: " + err.ToString());
            }

detay[1].FieldByName("TYPE").Value = 0; satırında yine aynı hatayı veriyor
« Son Düzenleme: 03.09.2014, 15:47 Gönderen: cengiz_ozdemir »

Çevrimdışı ByBirol®

  • Logo Sistem Administrator
  • Logo Uzmanı
  • *****
  • Karma: 18
  • admin@artibilisim.com Logo Çözüm Ortağı
Ynt: Lobject Satış Siparişi Hata
« Yanıtla #5 : 03.09.2014, 15:50 »
Data siparis = unity.NewDataObject(DataObjectType.doSalesOrderSlip);
            siparis.New();

            siparis.DataFields.FieldByName("NUMBER").Value = "Sipariş No";
            siparis.DataFields.FieldByName("DATE").Value = "Tarih";
            siparis.DataFields.FieldByName("TIME").Value = "Zaman";
            siparis.DataFields.FieldByName("ARP_CODE").Value = "Firma Kodu";
            siparis.DataFields.FieldByName("TOTAL_NET").Value = "Toplam Tutar";
            siparis.DataFields.FieldByName("SALESMAN_CODE").Value = "Satıcı Kodu";
            siparis.DataFields.FieldByName("NOTES1").Value = "Not 1";
            siparis.DataFields.FieldByName("NOTES2").Value = "Not 2";
            siparis.DataFields.FieldByName("NOTES3").Value = "Not 3";
            siparis.DataFields.FieldByName("NOTES4").Value = "Not 4";

            siparis.DataFields.FieldByName("ORDER_STATUS").Value = 4; //ÖDeme
            siparis.DataFields.FieldByName("WITH_PAYMENT").Value = 1 ; //ÖDeme

            Lines detay = siparis.DataFields.FieldByName("TRANSACTIONS").Lines;
            if (detay.AppendLine())
            {
                detay[0].FieldByName("TYPE").Value = 4; // Hizmet
                detay[0].FieldByName("MASTER_CODE").Value = "Ürün Kodu";
                detay[0].FieldByName("QUANTITY").Value = "Sayıs";
                detay[0].FieldByName("PRICE").Value = "Tutar";
                detay[0].FieldByName("TOTAL").Value = "Toplam Tutar";
                detay[0].FieldByName("UNIT_CODE").Value = "Adet";
                detay[0].FieldByName("PC_PRICE").Value = "Tutar";
                detay[0].FieldByName("TOTAL_NET").Value = "Toplam Tutar";
                detay[0].FieldByName("VAT_RATE").Value = "KDV";
                detay[0].FieldByName("VAT_INCLUDED").Value = 1; //KDV Dahil
            }

           
            siparis.DataFields.FieldByName("ITEXT").Value = "Ekstra bilgi alanı";

            ValidateErrors err = siparis.ValidateErrors;

            if (siparis.Post())
            {
                Console.WriteLine("Sipariş Eklendi");

            }
            else
            {
                Console.WriteLine("Sipariş Eklenemedi");
                for (int i = 0; i < err.Count; i++)
                {
                    Console.WriteLine("{0} – {1};", err.Error, err.ID);
                }
            }

Çevrimdışı cengiz_ozdemir

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Lobject Satış Siparişi Hata
« Yanıtla #6 : 03.09.2014, 16:06 »
Tamam hata giderildi. Peki sizce System.__ComObject hatasını neden veriyordur