RSS

Kategori arşivi: Temel

Microsoft Dynamics AX Temel modülü kategorisi

Merhaba

Tablonuzdaki bazı alanaları ilişkiler kurarak kendi ana tablolarından filtreliyorsanız kurduğunuz ilişki yapısından alan sıralamasının çok büyük önemi olduğunu bugün farkettim 🙂

Eğer tablosunda ülke – il – ilçe alanlarınız varsa ve illerin seçtiğiniz ülkeye göre; ilçelerinden seçtiğiniz ülke ve il kombinasyonuna göre filtreli gelmesini istiyorsanız tablo ilişkilerinden il ve ilçe tablolarını bağlarken ilk değerin il veya ilçeden farklı olması gerektiğini unutmayın.

Örneğin ilçe tablosuyla kurulan ilişki ülke-il-ilçe sırasında olmazsa tüm ilçeler gelmekte; olursa ilçeler istediğimiz gibi gelmektedir.

Aşağıdaki resimde görsel olarakta açıkladım..

iliski-dogru-yanlıs

 
 

Etiketler:

Genel Adres defterinde mükerrer kayıtları listelemek

Genel adres defteri ile ilgili yeni bir yazı ile karşınızdayım. Bir önceki yazıda genel adres defteride mükerrer olan kayıtları gösteren bir kod örneği vermiştim. Fakat tekrar eden herbir kaydın hangi kayıtlar ilişkili olduğunu o kodda yakalayamıyorduk. Sadece ABC ltd. şirketi kaydı tekerrür etmişse bana (Adres defter kodu- adı[ABC ltd.]) formatında bir bilgi dönüyordu. Eğer bu bilgiye ek olarak ABC ltd. değerine sahip olan adres defteri kayıtları hangisidir sorunun cevabını arıyorsanız aşağıdaki kodu kullanabilirsiniz. Böylece mükerrer olan tüm kayıtları bir çırpıda elde edip daha sonra istediğim işlemi (silme, güncelleme, birleştirme) kolayca yapabilirim…

// Changed on 01 Ara 2010 at 12:11:36 by mesut
static void findDuplicateDirPartyRecordsByName(Args _args)
{
    DirpartyTable   party;

    name            firstName,lastName;
    dirPartyId      firstPartyId, lastPartyId;
    int             i= 1;
    container       c;
    ;

    while select party
                order by name
    {
        firstName    = party.Name;
        firstPartyId = party.PartyId;

        if(!lastName)
            {
              lastName    = party.Name;
              lastPartyId = party.PartyId;
            }
        else
        if(firstName == lastName)
        {
            //To prevent adding first record every cycle
            // If second record, goes else....
            if(i == 1)
                {
                    c   = conins(c,i,firstPartyId);
                    c   = conins(c,i+1,firstName);
                    c   = conins(c,i+2,lastPartyId);
                    c   = conins(c,i+3,lastName);
                    i   = 5;
                }
            else
                {
                    c   = conins(c,i,firstPartyId);
                    c   = conins(c,i+1,firstName);
                    i   = i + 2;
                }

            lastName      = party.Name;
            lastPartyId   = party.PartyId;

        }
        //Records changed.Add to info anymore
        else
        {
            //Add a blank record in container
            c = conins(c,conlen(c)+1,"");

            i = conlen(c);

            //Only add duplicate records to info
            if(conlen(c) > 1)
              {
                 info(any2str(conpeek(c,1 < i ? 1 : i))   + " " + any2str(conpeek(c,3 < i ? 3 : i))  + " " + any2str(conpeek(c,5 < i ? 5 : i ))  +
                " " + any2str(conpeek(c,7 < i ? 7 : i ))  + " " + any2str(conpeek(c,9 < i ? 9 : i))  + " " + any2str(conpeek(c,11 < i ? 11 : i)) +
                " " + any2str(conpeek(c,13 < i ? 13 : i)) + " " + any2str(conpeek(c,15 < i ? 15 :i)) + " " + any2str(conpeek(c,2)) );
              }
              //clear container
              c = condel(c,1,conlen(c));

            lastName    = party.Name;
            lastPartyId = party.PartyId;
            i = 1;
        }

    }

}

Bu durum nasıl oluyor peki?
1- Genel adres defteri bir çok tablo ile ortak kullanımda olduğu için kullanıcıların farkında olmadan aynı isimle kayıt girmeleri ya da mevcut kaydı kabul etmeyip aynı isimde tekrar kayıt açmaları sonucu oluşabilmektedir.
2- Özellikle ilk veri aktarımı sırasından farklı şirketlere aynı Müşteri, satıcı, iş ilişkisi kodları atılırken her şirkette farklı adres defter koduna sahip oluyorlar. Bu şirketlerde Sanal şirket bünyesinde ise kaydın her güncellenmesinde sistem güncelleme hatası vermektedir.

NOT: Yazıda belirtilen kodun, değiştirilmeden veya değiştirilerek, development/test/canlı ortamlarında kullanılması sonucu oluşabilecek olumlu/olumsuz durumlarda tüm sorumluluk kodu kullanan kişiye aittir.

Mesut BOZTAŞ
Dynamics AX ERP Danışmanı ve
İstanbul Ticaret Üni. Y.Lisans öğrencisi

İstanbul

http://www.etg-it.com

 
 

Etiketler: , , , , , ,

CEE şirketi yok hatası ve çözümü

Kaynak:  Sanal şirket eğer genel adres defter tablolarını kullanıyorsa her kullanıcı sanal şirket hesaplarındaki şirketlerin genel adres defteri tablolarını en az görme yetkisine sahip olmalıdır.

hata

hata2

Note: Users must have access to the company which the master number sequence is being used. If a user has access to CEU but not CEE, the system will not be able to retrieve the next party ID when creating new parties and the user will receive an error.

Çözüm: Kullanıcılar sanal şirket kapsamındaki tüm şirketlerde en azından Genel Adreses defteri görme yetkisine sahip olmalıdır.

Mesut BOZTAŞ
Dynamics AX ERP Danışmanı ve
İstanbul Ticaret Üni. Y.Lisans öğrencisi

İstanbul

http://www.etg-it.com

 
 

Etiketler: ,

 
%d blogcu bunu beğendi: