Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Zamanla, stok hareketi tablosu (InventTrans
) büyümeye ve daha fazla veritabanı alanı tüketmeye devam eder. Bu nedenle, tabloya göre yapılan sorgular zamanla yavaşlar. Bu makalede, sistem performansının iyileştirilmesine yardımcı olmak amacıyla envanter işlemleriyle ilgili verileri birleştirmek için Envanter işlemi birleştirme özelliğini nasıl kullanabileceğiniz açıklanmaktadır.
Not
Seçili kapalı genel muhasebe döneminde yalnızca mali olarak güncelleştirilmiş stok hareketleri konsolide edilebilir. Konsolide edilebilmesi için mali olarak güncelleştirilmiş gidiş stok hareketlerinin Satıldı çıkış durumuna sahip olması ve geliş stok hareketlerinin giriş durumunun Satın alındı olması gerekir.
Stok hareketlerini konsolide ettiğinizde, ilgili tüm hareketler InventTransArchive
tablosuna taşınır. Stok çıkış hareketleri ve stok girişi hareketleri, madde kodu (itemId
) ve stok boyutu kimliği (inventDimId
) kombinasyonuna göre ayrı ayrı konsolide edilir ve özetlenen çıkış ve özetlenen giriş hareketlerine yerleştirilir.
Bir itemId
ve inventDimId
kombinasyonu yalnızca bir giriş veya çıkış hareketi içeriyorsa hareket konsolide edilmez.
Not
Envanter işlemlerinizi birleştirdikten sonra, InventTransArchive
kayıtlarını bir Microsoft Azure veri gölüne taşımak için Dataverse uzun vadeli saklamayla arşivleme özelliğini kullanarak depolama ve sistem performansını daha da optimize edebilirsiniz. Daha fazla bilgi için bkz Dynamics 365 Supply Chain Management içindeki stok hareket verilerini arşivleme.
Sisteminizdeki özelliği etkinleştirme
Sisteminiz bu makalede açıklanan özelliği zaten içermiyorsa Özellik yönetimi'ne gidin ve Envanter işlemleri birleştirme özelliğini açın. Bu özellik, etkinleştirildikten sonra devre dışı bırakılamaz.
Stok hareketlerini konsolide etmeden önce dikkat edilmesi gerekenler
Stok hareketlerini konsolide etmeden önce, işlemden etkilenecekleri için aşağıdaki iş senaryolarını göz önünde bulundurmalısınız:
- Satın alma siparişi satırları gibi ilgili belgelerden stok hareketlerini denetlediğinizde, bunlar konsolide edilmiş olarak gösterilir. Konsolide edilen hareketleri gözden geçirmek için Stok yönetimi > Periyodik görevler > Temizleme > Stok hareketi konsolidasyonu'na gitmelisiniz.
- Konsolide edilen dönemler için stok kapanışı iptal edilemez.
- Konsolide dönemler için standart maliyet dönüştürme işlemi yapılamaz.
- Stok hareketlerini konsolide ettiğinizde, stok hareketlerinden elde edilen stok raporları etkilenir. Bu raporlar stok yaşlandırma raporunu ve stok değer raporlarını içerir.
- Stok tahminleri, konsolide dönemlerin öngörülen süreleri sırasında çalıştırılırsa etkilenebilir.
Ön Koşullar
Stok hareketleri yalnızca aşağıdaki koşulların karşılandığı dönemlerde konsolide edilebilir:
- Genel muhasebe dönemi kapatılmalıdır.
- Stok kapanışı, konsolidasyonunun dönem bitiş tarihinde veya sonrasında çalıştırılmalıdır.
- Dönem, konsolidasyonun dönem tarihinden en az bir yıl önce olmalıdır.
- Mevcut stok yeniden hesaplamaları bulunmamalıdır.
Stok hareketlerinizi konsolide etme
Stok hareketlerini konsolide etmek için bu adımları izleyin.
Stok yönetimi>Periyodik görevler>Temizleme>Stok hareketlerini konsolide etme öğesine gidin.
Stok hareketi konsolide etme sayfası görüntülenir ve konsolide işlem kayıtlarının listesini gösterir.
Stok hareketi konsolide etmek için Eylem Bölmesinde Stok hareketi konsolidasyonu'nu seçin.
Stok hareketi konsolidasyonu iletişim kutusunda, Parametreler hızlı sekmesinde aşağıdaki alanları ayarlayın:
- Kapalı genel muhasebe dönemindeki başlangıç tarihi: Konsolidasyona dahil edilecek en erken hareket tarihini seçin.
- Kapalı genel muhasebe dönemindeki bitiş tarihi: Konsolidasyona dahil edilecek en yeni hareket tarihini seçin.
Not
Yalnızca ön koşulları karşılayan dönemler seçim için kullanılabilir.
Arka planda çalıştır hızlı sekmesinde, toplu işleme ayrıntılarını gerektiği gibi ayarlayın. 'da toplu işler için olağan adımları izleyin Microsoft Dynamics 365 Supply Chain Management.
Tamam'ı seçin.
Devam etmek istediğinizi onaylamanızı isteyen bir ileti alırsınız. İletiyi dikkatlice okuyun ve devam etmek istiyorsanız Evet'i seçin.
Stok hareketi konsolidasyon işinizin toplu iş kuyruğuna eklendiğini bildiren bir ileti alırsınız. İş, seçilen döneme ait stok hareketlerini birleştirmeye başlar.
Konsolide stok hareketlerini görüntüle
Stok hareketi konsolidasyon sayfası konsolidasyon geçmişinizin tamamını gösterir. Kılavuzdaki her satır, konsolidasyonunun oluşturulduğu tarih, oluşturan kullanıcı ve durumu gibi bilgileri gösterir.
Sayfanın üst kısmında açılan listede, kılavuzda gösterilen konsolidasyonlara filtre uygulamak için aşağıdaki değerlerden birini seçin:
- Etkin : Yalnızca etkin konsolidasyonları gösterir.
- Tümü – Tüm konsolidasyonları göster.
Kılavuzdaki her konsolidasyon için aşağıdaki bilgiler sağlanır:
- Etkin – Onay işareti, konsolidasyonun etkin olduğunu gösterir.
- Başlangıç tarihi : Konsolidasyona dahil edilebilecek en eski hareketin tarihi.
- Bitiş tarihi : Konsolidasyona dahil edilebilecek en yeni hareketin tarihi.
- Zamanlayan : Konsolidasyonu oluşturan kullanıcı hesabı.
- Yürütüldü – Konsolidasyonun oluşturulduğu tarih.
- Geçerli güncelleştirmeyi durdur– Onay işareti, konsolidasyonun devam ettiğini ancak duraklatıldığını gösterir.
- Durum – Konsolidasyonun işlenme durumu. Olası değerler Beklemede, Devam Ediyor ve Tamamlandı'dır.
Kılavuzun üstündeki araç çubuğu, seçili bir konsolidasyonla çalışmak için kullanabileceğiniz aşağıdaki düğmeleri sağlar:
Konsolide işlemler – Seçilen konsolidasyonun tüm ayrıntılarını görüntüleyin. Görüntülenen Konsolide hareketler sayfası konsolidasyondaki tüm hareketleri gösterir.
Konsolide hareketler sayfasında belirli bir hareket hakkında daha fazla bilgi görüntülemek için kılavuzda hareketi seçin ve sonra eylem bölmesinde Konsolide işlem ayrıntıları'nı seçin. Görüntülenen Konsolide hareket ayrıntıları sayfası, genel muhasebe deftere nakli, ilgili alt genel muhasebe referansları ve mali boyutlar gibi bilgileri gösterir.
Duraklat – Şu anda işlenmekte olan seçili bir konsolidasyonu duraklatın. Duraklatma yalnızca arşivleme görevi oluşturulduktan sonra etkinleşir. Bu nedenle, duraklatma etkili olmadan önce kısa bir gecikme olabilir. Bir konsolidasyon duraklatılmışsa Geçerli güncelleştirmeyi durdur alanında bir onay işareti görünür.
Özgeçmiş – Şu anda duraklatılmış olan seçili bir konsolidasyon için işlemeye devam edin.
Özel alanları desteklemek için kodunuzu genişletme
InventTrans
tablosu bir veya daha fazla özel alan içeriyorsa, adlandırılmalarına bağlı olarak, kodu onları destekleyecek şekilde genişletmeniz gerekebilir.
InventTrans
tablosundaki özel alanlarInventtransArchive
tablosundakilerle aynı alan adlarına sahipse bu alanlar 1:1 eşlenir. Bu nedenle, özel alanlarıinventTrans
tablosununInventoryArchiveFields
alanlar grubuna koyabilirsiniz.InventTrans
tablosundaki özel alan adlarıInventtransArchive
tablosundaki alan adlarıyla eşleşmezse, bunları eşlemek için kod eklemeniz gerekir. Örneğin,InventTrans.CreatedDateTime
adlı bir sistem alanınız varsaInventTransArchive
tablosunda farklı bir adla (örneğinInventtransArchive.InventTransCreatedDateTime
) bir alan oluşturmanız ve aşağıdaki örnek kodda görüldüğü gibi,InventTransArchiveProcessTask
veInventTransArchiveSqlStatementHelper
sınıflarına uzantılar eklemeniz gerekir.
Aşağıdaki örnek kod, gerekli uzantının InventTransArchiveProcessTask
sınıfına nasıl ekleneceğinin bir örneğini gösterir.
[ExtensionOf(classStr(InventTransArchiveProcessTask))]
Final class InventTransArchiveProcessTask_Extension
{
protected void addInventTransFields(SysDaSelection _selectionObject)
{
_selectionObject.add(fieldStr(InventTrans, ModifiedBy))
.add(fieldStr(InventTrans, CreatedBy)).add(fieldStr(InventTrans, CreatedDateTime));
next addInventTransFields(_selectionObject);
}
protected void addInventTransArchiveFields(SysDaSelection _selectionObject)
{
_selectionObject.add(fieldStr(InventTransArchive, InventTransModifiedBy))
.add(fieldStr(InventTransArchive, InventTransCreatedBy)).add(fieldStr(InventTransArchive, InventTransCreatedDateTime));
next addInventTransArchiveFields(_selectionObject);
}
}
Aşağıdaki örnek kod, gerekli uzantının InventTransArchiveSqlStatementHelper
sınıfına nasıl ekleneceğinin bir örneğini gösterir.
[ExtensionOf(classStr(InventTransArchiveSqlStatementHelper))]
final class InventTransArchiveSqlStatementHelper_Extension
{
private str inventTransModifiedBy;
private str inventTransCreatedBy;
private str inventTransCreatedDateTime;
protected void initialize()
{
next initialize();
inventTransModifiedBy = new SysDictField(tablenum(InventTrans), fieldNum(InventTrans, ModifiedBy)).name(DbBackend::Sql);
inventTransCreatedDateTime = new SysDictField(tablenum(InventTrans), fieldNum(InventTrans, CreatedDateTime)).name(DbBackend::Sql);
inventTransCreatedBy = new SysDictField(tablenum(InventTrans), fieldNum(InventTrans, CreatedBy)).name(DbBackend::Sql);
}
protected str buildInventTransArchiveSelectionFieldsStatement()
{
str ret;
ret = next buildInventTransArchiveSelectionFieldsStatement();
if (inventTransModifiedBy)
{
ret += ',';
ret += strFmt('%1', new SysDictField(tablenum(InventTransArchive), fieldNum(InventTransArchive, InventTransModifiedBy)).name(DbBackend::Sql));
}
if (inventTransCreatedBy)
{
ret += ',';
ret += strFmt('%1', new SysDictField(tablenum(InventTransArchive), fieldNum(InventTransArchive, InventTransCreatedBy)).name(DbBackend::Sql));
}
if (inventTransCreatedDateTime)
{
ret += ',';
ret += strFmt('%1', new SysDictField(tablenum(InventTransArchive), fieldNum(InventTransArchive, InventTransCreatedDateTime)).name(DbBackend::Sql));
}
return ret;
}
protected str buildInventTransTargetFieldsStatement()
{
str ret;
ret = next buildInventTransTargetFieldsStatement();
if (inventTransModifiedBy)
{
ret += ',';
ret += strFmt('%1', inventTransModifiedBy);
}
if (inventTransCreatedBy)
{
ret += ',';
ret += strFmt('%1', inventTransCreatedBy);
}
if (inventTransCreatedDateTime)
{
ret += ',';
ret += strFmt('%1', inventTransCreatedDateTime);
}
return ret;
}
}