Monday, March 3, 2014

Job to Import Vendor/Customer Postal Address in Dynamics Ax2012

The job is for importing vendor postal address, with minor modifications it can be used for Customer also. The is also for my business scenario, so might be require some minnor modification for any other business scenario.
 static void PostalAddressCreate(Args _args)
  
   {
  
     VendTable vendTable;
  
     DirParty dirParty;
  
     DirPartyPostalAddressView PostalAddress;
  
     CommaTextIo file;
  
     container record;
  
     str countyId, zipcode;
  
     ;
  
     file = new CommaTextIo("C:\\VendorPostalAddress.csv",'r');
  
     file.inFieldDelimiter(',');
  
     while (file.status() == IO_Status::Ok)
  
     {
  
       record = file.read();
  
       vendTable = VendTable::find(conPeek(record,1));
  
       if (vendTable.RecId)
  
       {
  
         try{
  
         dirParty = DirParty::constructFromCommon(vendTable);
  
         PostalAddress.Street = conPeek(record,2);
  
         PostalAddress.BuildingCompliment = conPeek(record,3);
  
         PostalAddress.City = conPeek(record,4);
  
         PostalAddress.CountryCurrencyCode = conPeek(record,5);
  
         PostalAddress.CountryRegionId = conPeek(record,6);
  
         countyId = conPeek(record,7);
  
         if (Global::strStartsWith(countyId,'~'))
  
         {
  
           countyId = strDel(countyId,1,1);
  
         }
  
         PostalAddress.County = countyId;
  
         //PostalAddress.District = conPeek(record,8);
  
         //PostalAddress.DistrictName = conPeek(record,9);
  
         //PostalAddress.IsLocationOwner = conPeek(record,10);
  
         //PostalAddress.isocode = conPeek(record,11);
  
         PostalAddress.IsPrimary = conPeek(record,12);
  
         PostalAddress.LocationName = conPeek(record,16);
  
         PostalAddress.State = conPeek(record,24);
  
         zipcode = conPeek(record,30);
  
         if (Global::strStartsWith(zipcode,'~'))
  
         {
  
           zipcode = strDel(zipcode,1,1);
  
         }
  
         PostalAddress.ZipCode = zipcode;
  
         PostalAddress.ValidFrom = datetobeginUtcDateTime(1\1\2012, DateTimeUtil::getUserPreferredTimeZone()) ;
  
         PostalAddress.ValidTo = datetobeginUtcDateTime(1\1\2154, DateTimeUtil::getUserPreferredTimeZone()) ;
  
         PostalAddress.Party = vendTable.Party;
  
         if (!dirParty.createOrUpdatePostalAddress(PostalAddress).RecId)
  
           {
  
             info(VendTable.AccountNum);
  
           }
  
         }
  
         catch(Exception::Error)
  
         {
  
           info(VendTable.AccountNum);
  
         }
  
       }
  
     }
  
   }  

1 comment:

  1. Hello admin! This is remarkable article as well as it is valuable for the entire person and I want to say that I would like to write on this subject too. You have an interesting written of this topic.
    usps change address online

    ReplyDelete