Author Archive

ExistsJoin ve NotExistJoin ile Lookup yazmak

Merhaba

Şöyle bir istek olsun.  Seçilecek vergi numarası ne müşteri nede satıcı tablosunda kullanılmış olsun. Bu gibi bir istekte notexistjoin kullanabiliriz. Eğer müşteride veya satıcıda  kullanılanlar listelensin denseydi existjoin kullanacaktık.

client static void lookupETGVATNum (FormStringControl ctrl, Common common)
{
    SysTableLookup          sysTableLookup = SysTableLookup::newParameters(tablenum(TaxVATNumTable), ctrl);
    Query                   query = new Query();
    QueryBuildDataSource    queryBuildDataSource = query.addDataSource(tablenum(TaxVATNumTable));
    QueryBuildRange         queryBuildRange = queryBuildDataSource.addRange(fieldnum(TaxVATNumTable, CountryRegionId));
    QueryBuildDataSource    qdbs;
    ;

// CustTable müşteri tablosunda olmayanları getiriyoruz
    qdbs  = queryBuildDataSource.addDataSource(tablenum(CustTable));
    qdbs.addLink(fieldnum(TaxVATNumTable , vatNum ),fieldnum(CustTable , vatNum ));
    qdbs.joinMode(joinmode::NoExistsJoin);

Read more

Microsoft Dynamics AX 2009 Finans I – II + Workshop EÄŸitimi

 Microsoft Dynamics AX 2009 Finans I – II + Workshop EÄŸitimiTarih: 4-5-11-12-18-19-25-26 Åžubat  2011                                                                                                                                            

Süre: 8 gün

 

Eğitim Hakkında:

İlk 5 günü Microsoft’un belirlediği müfredatın anlatıldığı son 3 gün verilen senaryo üzerinden yapay implementasyon yapıldığı, toplam 8 günlük bu eğitim, katılımcılara Microsoft Dynamics AX içinde Finans’la ilgili gerekli olan kurulumları,süreçleri ve fonksiyonaliteyi  tanıtmayı amaçlamaktadır.

Bu eğitimde öncelikle  Finans için gerekli olan  kurulumlar (Hesap Planı,Müşteri-Satıcı Kartları) ve süreçleri (Fatura girişleri-Ödeme Ve Tahsilatlar) tanıtmayı amaçlamaktadır.  Katılımcı bu eğitimi tamamladığında Microsoft Dynamics AX içinde Finans sürecini tasarlayıp,yönetebilecek geniş bilgi birikimine sahip olacaktır.

  Read more

Ağlasa derd-i derûnum çeşm-i giryânım sana

Ağlasa derd-i derûnum çeşm-i giryânım sana
Âşikâr olurdu gâlib râz-ı pinhânım sana

(Sevgili!) İçimdeki dertler ile, yaş dolu gözlerim senin için ağlayacak olsa, (gönlümdeki) gizli sırlarım (gözyaşlarıma) gâlip gelir ve (sırlar) sana aşikâr olurdu.

Mesned-i hüsn üzre sen ben hâk-i rehde pâymâl
Mûr hâlin nice arz ede Süleyman’ım sana

Sen güzellik tahtında (oturuyorsun): bense yolunun toprağında pâymâl (ayaklar altında) kalmışım. Hâl bu iken a Süleyman’ım, sana bir karınca (denli âciz olan) durumumu nasıl arz edeyim? ‘ Divân edebiyatında Süleyman ihtişâmı; karınca da acziyet ve zayıflığı temsil ettiÄŸi için ÅŸair de kendini karınca; sevgilisini Süleyman olarak nitelendirmiÅŸtir.’

Åžem’i gör kim meclisinde aÄŸlayıp baÅŸdan çıkar
HoÅŸ yanar yıkılır ey ÅŸem’-i ÅŸebistânım sana

Read more

Axaptada yazıcı ayarlarına müdahale etmek

Merhaba,

Axaptada yazıcı ayarlarına printJobSettings() klası ile  mudahale edebilirsiniz.

Örneğin bir raporunuzun  3 kopya olarak basılmasını istiyorsunuz. Bunu elle yazıcı ayarlarından seçebileceğiniz gibi

kodlada bu işlemi otomatik yapabilirsiniz. Bunun için init metodunda şu kodu yazmanız yeterli.

element.printJobSettings().enableCopies(true);
element.printJobSettings().copies(3); // 3 kopya yazdır

Selamlar.

Axaptada bir formun hangi menuItem ile çağırıldığını bulmak

Merhaba,

Örneğin sizden LedgerJournalTable formunun kambiyo senetleri günlüğünden çağırıldığında  bazı ek işlemler yapmanızı istediler.

Kambiyo senetlerinden Kambiyo senedi günlüğünü (yani LedgerJournalTable formunu) açan  “LedgerJournalTableExchangeNote” isimli MenuItemdır.

Burada iki yöntem kullanılabilir.
Birincisi: MenuItem’ ın isminden ayırabilirsiniz.

if (element.args().menuItemName() == menuitemDisplaystr(LedgerJournalTableExchangeNote))
{
info(“Beni kambiyo senetlerinden çağırdılar.”);
}

İkincisi:ParmEnum ile ayırabilirsiniz ki bu daha şık olur.

Öncelikle MenuItem’ın EnumTypeParameter ve EnumParameter özelliklerini tanımlamalıyız.
Bizim kullandığımız LedgerJournalTableExchangeNote menuItem’mı için zaten  standartta tanımlamalar yapılmış olduÄŸunda aÅŸağıdaki ÅŸekilde kullanabiliriz.

if (element.args().parmEnum() == LedgerJournalType::ExchangeNote)
{
     info(“Beni kambiyo senetlerinden çağırdılar.”);  Â
}

Nabi

Bağ-ı dehrin hem hazanın hem baharın görmüşüz
Biz neşatın da gamın da ruzgârın görmüşüz.

Çok ta mağrur olma kim meyhane-i ikbalde
Biz hezaran mest-i mağrurun humarın görmüşüz.

Top-i ah-i inkisare paydar olmaz yinede
Kişver-i cahın nice sengin hisarın görmüşüz.

Read more

Su Kasidesi

Saçma ey göz eşkden gönlümdeki odlara su

Kim bu denlü dutuşan odlara kılmaz çâre su

(Ey göz! Gönlümdeki (içimdeki) ateşlere göz yaşımdan

su saçma ki, bu kadar (çok) tutuşan ateşlere su fayda

vermez.)

Âb-gûndur günbed-i devvâr rengi bilmezem

Yâ muhît olmış gözümden günbed-i devvâra su

(Şu dönen gök kubbenin rengi su rengi midir; yoksa

gözümden akan sular, göz yaşları mı şu dönen gök

kubbeyi kaplamıştır, bilemem..)

Zevk-ı tîğundan aceb yoh olsa gönlüm çâk çâk

Kim mürûr ilen bırağur rahneler dîvâra su

(Senin kılıca benzeyen keskin bakışlarının zevkinden

benim gönlüm parça parça olsa buna şaşılmaz. Nitekim

akarsu da zamanla duvarda, yarlarda yarıklar meydana

getirir.)

Vehm ilen söyler dil-i mecrûh peykânun sözin

İhtiyât ilen içer her kimde olsa yara su

(Yarası olanın suyu ihtiyatla içmesi gibi, benim

yaralı gönlüm de senin ok temrenine, ok ucuna benzeyen

kirpiklerinin sözünü korka korka söyler.)

Read more

Axaptada hiyerarşık bir tabloyu ağaç yapısıyla yönetmek

Merhaba

Bazı durumlarda hiyerarşık yapılar kurmak zorunda kalabilirsiniz. Bunu yönetmenin en iyi yolu ağaç(Tree) yapısını kullanmaktır. Axapta standardında bir çok yerde ağaç yapısını görebilirsiniz. Örneğin: LedgerRowDefDesigner formunda sürükle bırakla çalışan bir ağaç yapısı mevcut. Ayrıca  tutorial_Form_TreeControl örnek formu da size fikir verebilir.

Ben örneğimde bir hiyerarşi tablosunun form açıldığında ağaç yapısıyla görüntülenmesini ve  ağaç elemanlarının (Node)  bu form vasıtasıyla düzenlenmesinin (güncelleme , silme ve ekleme) nasıl yapılacağını anlatacağım.

Örnek olarak şöyle bir tablomuz  olsun :

ETGItemGroupTable :    ItemGroupId    ,    ItemGroupName    ,    ItemGroupLevel   ,    ItemGroupIdParent
ItemGroupId  ,   ItemGroupIdParent   =  EDT – DTItemGroupId

ItemGroupId  ,   ItemGroupIdParent   aynı EDT den oluşturuyoruz. Hiyerarşik yapıyı ItemGroupIdParent sayesinde kuracağız.

ItemGroupLevel   Burada  hiyerarşiyle pek ilgisi olmayan benim kurgumla alakalı olan bir seviye kodu var. Ben bu hiyerarşideki bütün elamanların birer seviye kodu olsun istiyorum ve bu kod 1-8 arasında olabilir. Formda gerekli kontrolleri buna göre yazıyorum.

Ulaşmak istediğim form görünümü şu şekilde

Yeni bir form oluşturup veri kaynağını ekleyip tasarımdada gerekli elemanları ekleyelim. Ağaç elemanımızı da ekledikten sonra bazı metodlar yazmamız gerekiyor onlara gecelim.

Read more

Ziya PaÅŸa: Terkib-i Bend

ikbâl için ahbâbı siâyet yeni çıktı
Bilmez idik evvel bu dirâyet yeni çıktı

(Yükselmek, iyi bir mevkiye gelmek için dostlarını çekiştirmek yeni çıktı, önceleri bu beceriksizliği bilmezdik, bu da yeni çıktı)

Sirkat çoğalıp lâfz-ı sadâkat modalandı
Nâmus tamam oldu hamiyyet yeni çıktı

(Hırsızlık çoğalıp sadakat sözü moda haline geldi, namusu bitirdik, hamiyet yeni çıktı)

Düşmanlara ahbâbını zemm oldu zerafet
Dildardan ağyâra şikâyet yeni çıktı

(Düşmanlara dostları yermek bir incelik oldu; başkalarına gönül dostlarından şikayet yeni çıktı)

Sâdıkları tahkîr ile red kaide oldu
Hırsızlara ikram ü inayet yeni çıktı

(Sâdık kişileri aşağılama, reddetme benimsenir oldu; hırsızlara ikram ve yardım yeni çıktı)

Hak söyleyen evvel dahi menfûr idi gerçi
Hainlere amma ki riayet yeni çıktı

(Her ne kadar doğruyu söyleyenler de önceleri nefretle karşılanmışsa da ancak hainlere uyma yeni çıktı)

Evrak ile ilân olunur cümle nizâmât
Elfâz ile terfîh-i ra’iyyet yeni çıktı

(Bütün düzenlemeler bazı kâğıtlar ile ilan olunur, söz ile halkın refaha eriştirilmesi ise yeni çıktı)

Âciz olanın ketm olunur hakk-ı sarîhi
Mahmîleri her yerde himâyet yeni çıktı

(Güçsüz olanın en belirgin hakkı saklı tutulur, himaye görenleri her yerde korumak yeni çıktı)

isnâd-ı ta’assub olunur merd-i gayûra
Dinsizlere tevcîh-i reviyyet yeni çıktı

(Gayretli kişiler taassubla suçlanırken dinsizlere özgü derin düşünce yeni çıktı)

islam imiş devlete pâ-bend-i terakki
Evvel yoğ idi işbu rivâyet yeni çıktı

(Devletin yükselmesine engel olan islamiyet imiş, önceleri yoktu, bu rivayet yeni çıktı)

Milliyyeti nisyan ederek her iÅŸimizde
Efkâr-ı Firenge tebaiyyet yeni çıktı

(Her işimizde millî benliğimizi unutarak Batı düşüncesine körü körüne bağlılık yeni çıktı)

Eyvah bu bâzîçede bizler yine yandık
Zîra ki ziyan ortada bilmem ne kazandık

(Eyvah bu oyunda bizler yine yandık, çünkü zarar ortada bu konuda bilmem biz ne kazandık)

WinAPI::createDirectoryPath ‘de “$” iÅŸareti hatası

Merhaba

Örenğin şöyle bir adresimiz olsun:

filePath = \\10.34.32.21\axapta$\Ozluk;

WinAPI::createDirectoryPath(filePath);

Komutu ile klasor oluşturmaya çalışırsanız hata alırsınız. Çünki $ işaretinden kaynaklanan bir sorun var.
WinAPI::createDirectoryPath(filePath) metodunda kullanılan strlen(filePath) fonksiyonu $ işartetinden dolayı doğru sonuç döndüremiyor.

createDirectoryPath metodunun içeriğine bakalım:

Read more

Page 30 of 40« First...1020282930313240...Last »