Dynamics 365 Finance and Operations: Kodla Ön Ödeme Oluşturup Deftere Nakletmek
  1. Anasayfa
  2. Dynamics 365

Dynamics 365 Finance and Operations: Kodla Ön Ödeme Oluşturup Deftere Nakletmek

0

Bu yazıda Dynamics 365 Finance and Operations standart özelliklerinden biri olan ön ödemeyi kodla nasıl yapıyoruz bir örnekle anlatacağım.

Bu işlem Satınalma siparişleri üzerinden yapılabiliyor. Ancak bize gelen talepte bunun basit bir onaya tabi olması istendi. Bunun için bir ara tablo yapıp onun üzerinden otomatik ön ödeme oluşturup deftere nakletmek istedik.

Resim-1

 

Şöyle bir kodla işimizi halldebiliriz.

PurchFormLetter             purchFormLetter;

                purchTable                         purchTable;

                PurchPrepayTable          PurchPrepayTable;

                PurchId                            purchId;

                PackingSlipId                  packingSlipId;

                ;             

                ttsBegin;

                purchTable = PurchTable::find(DmrSellerAdvance.OrderNumber);

                PurchPrepayTable = PurchPrepayTable::findPurchId(DmrSellerAdvance.OrderNumber , true);

                if(PurchPrepayTable.RecId == 0)

                {

                               PurchPrepayTable.clear();

                               PurchPrepayTable.Type = PurchPrepayType::Fixed;

                               PurchPrepayTable.PurchTable = DmrSellerAdvance.OrderNumber;

                               PurchPrepayTable.PrepayCategoryId = 313452354; // Kategori zorunlu

                               PurchPrepayTable.Currency = PurchTable::find(DmrSellerAdvance.OrderNumber).CurrencyCode;

                               PurchPrepayTable.Description = DmrSellerAdvance.Description;

 

                               PurchPrepayTable.Value = DmrSellerAdvance.PayableQty; // Ödenecek tutar burası.

                               PurchPrepayTable.PrepayLimit = DmrSellerAdvance.OrderQty;

                               PurchPrepayTable.PrepayAvailable = DmrSellerAdvance.PayableQty;

 

                               purchPrepayTable.recalculatePrepayLimit();

                               purchPrepayTable.recalculateAmounts(false);

                               PurchPrepayTable.insert();

                }

                Else

// Eğer birden çok ödeme yapılacaksa Value güncelleyerek yapabilirsiniz.

                {

                               PurchPrepayTable.Value = PurchPrepayTable.Value + DmrSellerAdvance.PayableQty;    

                               purchPrepayTable.recalculatePrepayLimit();

                               purchPrepayTable.recalculateAmounts();

                               PurchPrepayTable.update();      

                }             

                purchFormLetter = PurchFormLetter::construct(DocumentStatus::Invoice);

                PurchFormLetter.parmInvoiceType(PurchInvoiceType::VendorAdvance); // Fatura tipi böyle olmalı.

                purchFormLetter.update(purchTable, NumberSeq::newGetNumFromId(  PurchParameters::numRefPurchAdvanceVoucher().NumberSequenceId).num());

                ttsCommit;

 

Bu yazıda bir ön ödeme kaydı oluşturup deftere nakletme örneğini inceledik. Satınla tarafı biraz kafa karıştırıcı olabiliyor. Bekleyen tedarikçi faturası olmadı sürece direk sipariş üzerinden faturalama yapabilirsiniz.

Selamlar.

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar:
www.mshowto.org

www.fatihdemirci.net

TAGs: Microsoft Life Cycle Services, LCS, Azure, Azure DevOps, PurchInvoiceType::VendorAdvance, PrePayment, Microsoft Dynamics 365, MsDyn365FO, MsDyn365CE, MsDyn365,X++

 

 

 

Bu İçeriğe Tepkin Ne Oldu?
  • 1
    harika_
    Harika!!
  • 0
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 0
    bilemedim_
    Bilemedim!
  • 0
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

2005 yılında Kocaeli Üniversitesi Bilgisayar Mühendisliğinden mezun oldum. Okulda ve ilk iş tecrübelerimde farklı yazılım dilleri kullandım. 2007 yılında Akşam gazetesinde işe başladım ve Microsoft Dynamics 365 (eski adıyla Axapta) ile orda tanıştım. Hiç duymadığım bir dil olan X++ kullanılıyordu. Kısa sürede adapta oldum ve kariyerimi bu alanda şekillendirdim. Bir kaç iş değişikliğinde sonra kendi firmamı kurdum. Şu anda DMR de yönetici ortak ve Çözüm mimarı olarak çalışmaktayım. 2010 yılında MCT oldum. Birçok faklı ortamda eğitimler verdim. Bloğum ve Youtube kanalımda tecrübelerimi paylaşmaktayım.

Yazarın Profili

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir