LOBJECTS.dll ile siparişten irsaliye oluşturmada kampanya uygulama problemi

Gönderen Konu: LOBJECTS.dll ile siparişten irsaliye oluşturmada kampanya uygulama problemi  (Okunma sayısı 1676 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı sdbalkan

  • Yeni Kullanıcı
  • *
  • Karma: 0
LOBJECTS.dll kullanarak siparişten irsaliye oluşturuyorum. Eğer siparişte kampanya uygulanmış ise APPLYCAMPAIGN fonksiyonunu kullandığımda irsaliye detay satırlarındaki sipairş referanslarını kopartıyor. Ayrıca eğer siparişte Kampanya uygulandıktan sonra manuel indirim satırı girilmiş ise burada nasıl bir yol izlemem gerekir. Şu an uyguladığım yöntem her kampanya satırını gördüğümde kampanya uygulamadan irsaliye yi kaydediyorum. Sonra kampanya uygula fonksiyonunu kullanıyorum ve tekrar irsaliye yi kaydediyorum. Bu durumda da kampanya satırlarından sonra uygulanmış tanımsız manuel indirimler var ise bu satırları irsaliyeden çıkarıyor.
Kullandığım kod aşağıdadır. Burada yaptığım yanlış bir şey mi var yada dll bir bug mı var?
Yardımlarınız için şimdiden teşekkür ederim.

                    Dim oIrsDetay As UnityObjects.Lines = oIrs.DataFields.FieldByName("TRANSACTIONS").Lines
                    For i As Integer = 0 To oSipDetay.Count - 1
                        Dim nTip As Integer = oSipDetay.Item(i).FieldByName("TYPE").Value
                        If oSipDetay.Item(i).FieldByName("CMPG_LINE_REF").Value > 0 And nTip = 2 Then
                            If Not IrsaliyeKaydet(oUnity, oIrs) Then
                                MsgBox(oIrs.ErrorDesc, MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly)
                                Exit sub
                            End If
                            If Not oIrs.ApplyCampaign() Then 'Kampanya uygula
                                MsgBox(oIrs.ErrorDesc, MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly)
                                Exit sub
                            End If
                            If Not IrsaliyeKaydet(oUnity, oIrs) Then
                                MsgBox(oIrs.ErrorDesc, MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly)
                                Exit sub
                            End If
                            oIrsDetay = oIrs.DataFields.FieldByName("TRANSACTIONS").Lines
                        Else
                            If oIrsDetay.AppendLine Then
                                oIrsDetay.Item(i).FieldByName("TYPE").Value = oSipDetay.Item(i).FieldByName("TYPE").Value 'Tip
                                oIrsDetay.Item(i).FieldByName("DESCRIPTION").Value = oSipDetay.Item(i).FieldByName("TRANS_DESCRIPTION").Value 'Açıklama
                                oIrsDetay.Item(i).FieldByName("MASTER_CODE").Value = oSipDetay.Item(i).FieldByName("MASTER_CODE").Value 'Ürün
                                oIrsDetay.Item(i).FieldByName("DETAIL_LEVEL").Value = oSipDetay.Item(i).FieldByName("DETAIL_LEVEL").Value 'Fiş Altı İndirim
                                oIrsDetay.Item(i).FieldByName("DISCEXP_CALC").Value = oSipDetay.Item(i).FieldByName("CALC_TYPE").Value 'Hesaplama Türü
                                oIrsDetay.Item(i).FieldByName("GL_CODE1").Value = oSipDetay.Item(i).FieldByName("GL_CODE1").Value 'Muhasebe Hesap Kodu 1
                                oIrsDetay.Item(i).FieldByName("GL_CODE2").Value = oSipDetay.Item(i).FieldByName("GL_CODE2").Value 'Muhasebe Hesap Kodu 2
                                oIrsDetay.Item(i).FieldByName("QUANTITY").Value = oSipDetay.Item(i).FieldByName("QUANTITY").Value 'Miktar
                                oIrsDetay.Item(i).FieldByName("PRICE").Value = oSipDetay.Item(i).FieldByName("PRICE").Value 'Birim Fiyat
                                oIrsDetay.Item(i).FieldByName("PAYMENT_CODE").Value = oSipDetay.Item(i).FieldByName("PAYMENT_CODE").Value 'Ödeme Şekli
                                oIrsDetay.Item(i).FieldByName("DISCOUNT_RATE").Value = oSipDetay.Item(i).FieldByName("DISCOUNT_RATE").Value 'İndirim Yüzdesi
                                oIrsDetay.Item(i).FieldByName("COST_DISTR").Value = oSipDetay.Item(i).FieldByName("COST_DISTR").Value 'Dağıtılan Maliyet
                                oIrsDetay.Item(i).FieldByName("DISCOUNT_DISTR").Value = oSipDetay.Item(i).FieldByName("DISCOUNT_DISTR").Value 'Dağıtılan İndirim
                                oIrsDetay.Item(i).FieldByName("EXPENSE_DISTR").Value = oSipDetay.Item(i).FieldByName("EXPENSE_DISTR").Value 'Dağıtılan Masraf
                                oIrsDetay.Item(i).FieldByName("PROMOTION_DISTR").Value = oSipDetay.Item(i).FieldByName("PROMOTION_DISTR").Value 'Dağıtılan Promosyon
                                oIrsDetay.Item(i).FieldByName("VAT_RATE").Value = oSipDetay.Item(i).FieldByName("VAT_RATE").Value 'Kdv Yüzdesi
                                oIrsDetay.Item(i).FieldByName("VAT_INCLUDED").Value = oSipDetay.Item(i).FieldByName("VAT_INCLUDED").Value 'Kdv Dahil/Hariç
                                oIrsDetay.Item(i).FieldByName("UNIT_CODE").Value = oSipDetay.Item(i).FieldByName("UNIT_CODE").Value 'Birim Kod
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV1").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV1").Value 'Birim Çevrim 1
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV2").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV2").Value 'Birim Çevrim 2
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV3").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV3").Value 'Birim Çevrim 3
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV4").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV4").Value 'Birim Çevrim 4
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV5").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV5").Value 'Birim Çevrim 5
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV6").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV6").Value 'Birim Çevrim 6
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV7").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV7").Value 'Birim Çevrim 7
                                oIrsDetay.Item(i).FieldByName("UNIT_CONV8").Value = oSipDetay.Item(i).FieldByName("UNIT_CONV8").Value 'Birim Çevrim 8
                                oIrsDetay.Item(i).FieldByName("RC_XRATE").Value = oSipDetay.Item(i).FieldByName("RC_XRATE").Value 'Raporlama Döviz Kuru
                                oIrsDetay.Item(i).FieldByName("COMPOSITE").Value = oSipDetay.Item(i).FieldByName("COMPOSITE").Value 'Karma Koli
                                oIrsDetay.Item(i).FieldByName("SOURCEINDEX").Value = oSipDetay.Item(i).FieldByName("SOURCE_WH").Value 'Kaynak Ambar
                                'oIrsDetay.Item(i).FieldByName("DIVISION").Value = oSipDetay.Item(i).FieldByName("DIVISION").Value 'İşyeri
                                'oIrsDetay.Item(i).FieldByName("DEPARTMENT").Value = oSipDetay.Item(i).FieldByName("DEPARTMENT").Value 'Bölüm
                                oIrsDetay.Item(i).FieldByName("FACTORY").Value = oSipDetay.Item(i).FieldByName("FACTORY").Value 'Fabrika
                                oIrsDetay.Item(i).FieldByName("ORDER_REFERENCE").Value = oSipDetay.Item(i).FieldByName("INTERNAL_REFERENCE").Value 'Referans
Next i

                    If oIrs.Post Then
                        Msgbox("İşlem Tamamlandı.")
                    Else
                        'Hata
                        If oIrs.ValidateErrors.Count > 0 Then
                            MsgBox(oIrs.ValidateErrors(0).Error, MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly)
                        Else
                            MsgBox(oIrs.ErrorDesc, MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly)
                        End If
                    End If