NaciO

Malzeme browserını uyarladığımda ek kolonlarda aynı değerler tekrarlanıyor

  Tiger/Logo Object Designer (LOD)

Malzeme browserını uyarladığımda ek kolonlarda aynı değerler tekrarlanıyor. Bu problemi nasıl aşabilirim?

Örnek kodum aşağıdaki gibidir;

Sub DBGPrepareQuery(ctrl as String, ID as Integer)
  DBGGetQuery("StDataGrid", qry)
  tblName=Application.GetTableName(332,Application.CompanyId,Application.FiscPerdId)
  qry.jointable("BAR", tblName, "LGMAIN", "LOGICALREF", "=", "ITEMREF", "", 1)
  qry.AddSelFieldAsc("BAR", "BARCODE", 4, 0, 10018)  
End Sub

Sub DBGSetRow(ctrl as String, ID as Integer, row as String)
  qry.GetFieldValueAsc(10018, 4, strBarcode)
  DBGSetField("StDataGrid", row, 10018, strBarcode)
End Sub

 


Uyarlama LOD


NaciO

Onaylanmış Cevap

Merhaba,

Malzeme, Cari Hesap ve Muhasebe kartları browserlarında bir performans iyileştirmesi yaparak bazı bilgilerin blok halinde sorgulanması sağlandı. Bu şekilde daha önce tek tek sorgulanan bazı bilgiler için 50 kayıtlık bloklar halinde sorgulama yapılmaktadır. Dolayısıyla tek satır üzerinden sorgulanması gereken ek kolon uygulamalarında eski projelerde ve eski kod örneklerinde böyle bir sorun ortaya çıkabilir.

Problemin giderilmesi için kodunuzda DBGGetFetchMode metodunun kullanılması gerekmektedir. Kodu aşağıdaki şekilde düzenlediğinizde problem aşılacaktır.

Sub DBGPrepareQuery(ctrl as String, ID as Integer)
  DBGGetQuery("StDataGrid", qry)
  tblName=Application.GetTableName(332,Application.CompanyId,Application.FiscPerdId)
  qry.jointable("BAR", tblName, "LGMAIN", "LOGICALREF", "=", "ITEMREF", "", 1)
  qry.AddSelFieldAsc("BAR", "BARCODE", 4, 0, 10018)  
End Sub

Sub DBGSetRow(ctrl as String, ID as Integer, row as String)
  DBGGETFetchMode("StDataGrid",ModeID)
  if ctrl="StDataGrid" and ModeID=0 then
     qry.GetFieldValueAsc(10018, 4, strBarcode)
     DBGSetField("StDataGrid", row, 10018, strBarcode)
  end if
End Sub

Saygılarımla.


18/09/15 14:09

Cevap vermek için giriş yapmanız gerekmektedir.