1 yılı aşkın bir süredir logo tiger kullanıyorum/z öncelikle copy paste olayı ile hemen hemen her işimizi görüyor. logo da objects kullanmak istiyorsanız ilk olarak lisansınızın olması gerekiyor. register felan nette bir çok sitede var ben sadece delphi ile pek az örnek var küçük bir örnekte ben sunmak istedim. döküman diye fazla kıvranmayın tablo isimleri harici pek fazla döküman bulamazsınız üretici firma ise sadece çözüm ortaklarına destek veriyor. benim tavsiyem ne yapacaksanız fiş fatura vs. logoda yapın ve araçlar veri aktarımı ile dışarı xml atın ve alanları inceleyin aşağıdaki örnek size yol gösterecektir. unutmadan saati herzaman pack etmek zorundasınız.
var data: IData; datalines: UnityObjects_TLB.ILines; zaman: OleVariant; begin data := Logo.NewDataObject(doSalesInvoice); data.New; data.DataFields.FieldByName('TYPE').Value := 9; data.DataFields.FieldByName('NUMBER').Value := //Fatura No data.DataFields.FieldByName('DOC_NUMBER').Value := // Belge Numarası data.DataFields.FieldByName('AUXIL_CODE').Value := 'AUTO'; data.DataFields.FieldByName('DATE').Value := //Tarih data.DataFields.FieldByName('DOC_DATE').Value := // Tarih Logo.PackTime(12, 12, 12, zaman); data.DataFields.FieldByName('TIME').Value := zaman; data.DataFields.FieldByName('ARP_CODE').Value := // Müşteri Kodu data.DataFields.FieldByName('POST_FLAGS').Value := 247; data.DataFields.FieldByName('PAYMENT_CODE').Value := // Ödeme Planı data.DataFields.FieldByName('SALESMAN_CODE').Value := // Satıcı data.DataFields.FieldByName('NOTES1').Value := //Açıklama data.DataFields.FieldByName('SOURCE_WH').Value := // Ambar Kodu data.DataFields.FieldByName('DIVISION').Value := //Depo Kodu datalines := data.DataFields.FieldByName('TRANSACTIONS').Lines; datalines.AppendLine; datalines[0].FieldByName('TYPE').Value := 4; datalines[0].FieldByName('MASTER_CODE').Value := //Stok Kodu datalines[0].FieldByName('QUANTITY').Value := //Adet datalines[0].FieldByName('PRICE').Value := //B.Fiyat datalines[0].FieldByName('UNIT_CODE').Value := 'ADET'; datalines[0].FieldByName('VAT_RATE').Value := //KdV data.Post
Merhaba,
Lobjects delphide nasıl kullanıyoruz bu konuda bilgin varmı?
Örnek delphi örneği ama nerede takıldınız ? lisansınız yoksa hiç uğraşmayın kemalbayat[ ]gmail.com mail adresim
Merhaba,
ufak bir delphi projesi paylaşma imkanınız var mı?
Merhaba cevap gecikti ama kusura bakmayın işlerin yoğunluğundan bir türlü fırsat bulamadım.
en kısa sürede siteye küçük bir örnek eklemeye çalışırım.
Cevabınız için teşekkürler.
Örnek uygulamanızı bekleyeceğim.
Dostum Kolay Gelsin,
Bir gelişme varmı?
Objects.dll kullanarak Logoya veri girebilen küçük bir uygulama. Veri olarak fatura, irsaliye, sipariş fişi v.s. olabilir yada daha basit, stok cari kartı olabilir.
Çalışan küçük bir örnek proje lazım.
Hocam biraz işlerim yoğun en kısa sürede fatura örneği github’a göndercem
Eyvallah, kolay gelsin.
selamlar
data: IData;
datalines: UnityObjects_TLB.ILines;
bu objelerı nasıl yarattınız
onları yaratmana gerek yok
sadece Logo := CoUnityApplication.Create; uygulamayı yarat her uygulamada 1 tane yarat aksi halde lisans sayın dolunca hata verir
sonra Logo.Login(EdUser.Text, EdPass.Text, StrToIntDef(EdFirm.Text, 0), StrToIntDef(EdDonem.Text, 0)) şeklinde login ol
sonra data := Logo.NewDataObject(doSalesInvoice); fiş türünü seç data.New;
data.DataFields.FieldByName(‘NUMBER’).Value burası fatura başlığı
datalines := data.DataFields.FieldByName(‘TRANSACTIONS’).Lines; burası fatura kalemleri
datalines.AppendLine;
sonra data.Post veriyi gönderiyoruz
data.DataFields.FieldByName(‘INTERNAL_REFERENCE’).Value buradan da kaydedilen faturanın id sini alıyoruz invoice tablosundaki id bu
hataları try except değilde if data.post then oo başarılı else sıçtı gibi 🙂 ile yakala
hatalar ise data.ErrorCode <> 0 şeklinde yakala
en kısa sürede çalışan bir örnek yazacam ama muhasebecilik yapmaktan hiç vaktim olmuyor ve en büyük sorunum logunun işyerinde olması 🙂
öyle olunca geliştirme yapmak için işyerine ihtiyacım var
Selamlar
Yanıt ışın teşekkürler
Burda sunucu falan gösterilmiyor acaba logoyu kendı makınamsmı kurmam gerekıyor
Birde Logo.NewDataObject(doSalesInvoice);
Logo varabilde ki tipi ne olacak
Küçük bir örnek paylaşma imkanın varsa memnun olurum.
Selmalar
2 yontem var bırısı dll ockden regıster edıyosun ve fıled by name ıle yapıyon ama bu durumda kandı makınamdakı regıster edılmıs dll dosayasına verı gonderınce servere nasıl gıdecek onu anlamadım
1 yontemde logonun yenı urettıgı exe bır soap servıce yaratıyor
onu wdsl den ımport edıp xml gonderıyosun ama 2 sınıde beceremedım henuz 2 yontemde ornegımde mevcut bı yerlerde hata edıyorum ama nasıl bılemedım
http://www.ercey.com.tr/Depo.rar
sorunu cozdum tesşekkürler
yanlış dll le uğraşıyormuşum
http://www.kemalbayat.com.tr/2017/02/22/logo-objects-ile-fatura-kesmek-yontem-1/
aşağıdaki kod ile excel’den LOD kullanılarak fatura içeri alınıyor.
Ancak tüm excel kalemlerini bir tek fatura üzerine toplayarak alıyor. do While döngüsü olmasına rağmen. excel her satırını bir fatura yaparak nasıl içeri alabiliriz.
Saygılarımızla,
Sub DoubleClick(ctrl as String, index as Integer)
If (Ctrl = “edtKaynak”) Then
GetTextVal(“edtKaynak”, Kaynak)
SelectFile (“Excel File|*.XLS”, Kaynak, “Kaynak dosya seçimi”, Kaynak)
If (Kaynak “”) Then
SetTextVal(“edtKaynak”, Kaynak)
End If
End If
End Sub
Sub ButtonClick(ctrl as String)
If (Ctrl = “btnAktar”) Then
GetTextVal(“edtKaynak”, Kaynak)
If (Kaynak “”) Then
I =2
XLApp = OleObject(“Excel.Application”)
XLApp.Visible = False
XLApp.Workbooks.Open(Kaynak)
Sheet = XLApp.Sheets[1]
invoice = Application.NewDataObject(19)
invoice.New ()
‘TIP = Sheet.Cells[I, 6].Value
CHKodu = Sheet.Cells[I, 5].Text
Faturano = Sheet.Cells[I, 4].Text
‘DokTarih = Sheet.Cells[I, 7].Value
‘DuzTarihi = Sheet.Cells[I, 6].Value
do
invoice.DataFields.FieldByName(“NUMBER”).Value = Faturano
invoice.DataFields.FieldByName(“ARP_CODE”).Value =CHKodu
invoice.DataFields.FieldByName(“DATE”).Value = today
invoice.DataFields.FieldByName(“DOC_DATE”).Value = today
invoice.DataFields.FieldByName(“TYPE”).Value = 9
Faturano = Sheet.Cells[I, 4].Text
CHKodu = Sheet.Cells[I, 5].Text
‘DokTarih = Sheet.Cells[I, 7].Value
‘DuzTarihi = Sheet.Cells[I, 6].Value
‘TIP = Sheet.Cells[I, 6].Value
‘STKodu = Sheet.Cells[I, 1].Text
‘Miktar = Sheet.Cells[I, 2].Value
‘Tutar = Sheet.Cells[I, 3].Value
transactions_lines = invoice.DataFields.FieldByName(“TRANSACTIONS”).Lines
‘ Faturano = Sheet.Cells[I, 4].Text
‘CHKodu = Sheet.Cells[I, 5].Text
STKodu = Sheet.Cells[I, 1].Text
Miktar = Sheet.Cells[I, 2].Value
Tutar = Sheet.Cells[I, 3].Value
transactions_lines.AppendLine ()
transactions_lines [I – 2].FieldByName(“TYPE”).Value = 4
transactions_lines [I – 2].FieldByName(“UNIT_CODE”).Value = “GUN”
transactions_lines [I – 2].FieldByName(“MASTER_CODE”).Value = STKodu
‘transactions_lines [I – 1].FieldByName(“DATE”).Value = today
transactions_lines [I – 2].FieldByName(“QUANTITY”).Value = Miktar
transactions_lines [I – 2].FieldByName(“TOTAL”).Value = Tutar
I=I+1
STKodu = Sheet.Cells[I, 1].Text
Miktar = Sheet.Cells[I, 2].Value
Tutar = Sheet.Cells[I, 3].Value
‘Faturano = Sheet.Cells[I, 4].Text
‘CHKodu = Sheet.Cells[I, 5].Text
‘DuzTarihi = Sheet.Cells[I, 6].Value
‘TIP = Sheet.Cells[I, 6].Value
‘DokTarih = Sheet.Cells[I, 7].Value
‘ do
‘ I=I+1
loop While (Faturano “”) and (STKodu “”)
If (invoice.Post() = true) Then
Warn(“Sigorta Poliçelerinin aktarımı tamamlandı.”)
Else
strError = “Sigorta Poliçeleri aktarılamadı!”
If (invoice.ValidateErrors.Count = 0) Then
intID = invoice.ErrorCode
Str(intID, strID)
strError = strError + “~” + strID
Select Case intID
Case 20
strError = strError + “, Kullanıcının mahsup fişi oluşturma yetkisi yok!”
Case Else
strError = strError + “, Beklenmeyen bir hata oluştu111!”
End Select
Else
For intI = 0 To invoice.ValidateErrors.Count – 1
intID = invoice.ValidateErrors.Item[intI].ID
Str(intID, strID)
strError = strError + “~” + strID + “, ” + invoice.ValidateErrors.Item[intI].Error
Next
End If
Warn(strError)
End If
invoice = Null
XLApp.Quit
XLApp = Null
Else
Warn(“Kaynak dosyayı seçiniz.”)
End If
End If
End Sub
STKodu Miktar Tutar Faturano CHKodu
TRAFİK 1 2 12345A 00000000003
TARIM 1 3,5 12345b 000006
TRAFİK 1 2 12345c 00000000003
TARIM 1 3,5 12345d 000006
verilen hizmet faturası dört adet.
ancak yalnız bir fatura dört satır Logo dan içeri alıyor. Do While döngüsünü çalıştırmamıza rağmen.
Şimdiden ilginiz için teşekkürler
Saygılarımızla,
döngüye bakabildiniz mi
objects ile excel’den birden fazla fatura düzenleme koduna bakabilmek için müsait oldunuz mu?
Saygılar