Sunday, 20 December 2015

Programe to print Pascal Casing of the sentense.....

Step 1:
static void Job32(Args _args)
{
    dialog           dialog;
    dialogGroup      dialogGroup;
    dialogField      dialogField;
    Container        con;
    str              k;
    int              l;
    int              i;
    int              j;
    str              res;
    ;
    dialog            = new Dialog("Simple Dialog");
    //dialogGroup       = dialog.addGroup("Hi");
    dialogField       = dialog.addField(extendedTypeStr(Description),"Enter Description");

    if (dialog.run())
    {
        con = str2con(dialogField.value(),' ',false);
     l = conLen(con);

     for(i=1;i<=l;i++)
     {
            k = conPeek(con,i);
            con = conPoke(con,i,str2CapitalWord(k));
     }

    for(j=1;j<=l;j++)
    {
        //res = conPeek(con,j);
        res = res+" "+conPeek(con,j);
    }

       print res;
       pause;

    }
 }

step 2: Run this job





Result:

Thursday, 19 November 2015

How to export license keys that are already loaded in your system

static void OutputLicenseToText(Args _args)
{
    #define.licenseVersion(2)
    #define.KeywordLen(20)
    #define.keywordLicense('License')
    #define.keywordProperties('Properties')
    #define.keywordCodes('Codes')
    #define.keywordCodeLine('CodeLine')
    #define.keywordDate('Date')
    #define.keywordSerial('Serial')
    #define.keywordValue('Value')
    #define.blank('')
    #define.space1(' ')
    #define.space2('  ')
    #define.space3('   ')
    #define.spaceHash(' #')
    #define.OutputFilename(@'C:\OutputLicenseKeys.txt')

    #define.keywordInfo(1)
    #define.keywordWarning(2)

    SysConfig           sysConfig;
    SysLicenseCodeSort  sysLicenseCodeSort;
    container           fileOut;
    int                 i;
    System.IO.StreamWriter  sw;
    InteropPermission perm = new InteropPermission(InteropKind::ClrInterop);
    ;

    fileOut += "LicenseVersion "    + strfmt("%1", #licenseVersion);
    fileOut += #blank;
    fileOut += #keywordLicense      + #spaceHash + xSysConfig::find(ConfigType::LicenseName,0).Value;
    fileOut += #blank;
    fileOut += #space1  + #keywordProperties;
    fileOut += #space2  + "Name"            + #spaceHash    + xSysConfig::find(ConfigType::LicenseName,0).Value;
    fileOut += #space2  + #keywordSerial    + #spaceHash    + xSysConfig::find(ConfigType::SerialNo,0).Value;
    fileOut += #space2  + #keywordDate      + #spaceHash    + xSysConfig::find(ConfigType::LicenseName,1).Value;
    fileOut += #space1  + "EndProperties";
    fileOut += #blank;
    fileOut += #space1  + #keywordCodes;

    // Build CodeLines
    while select sysConfig
        where sysConfig.configType  == ConfigType::AccessCodes   &&
              sysConfig.value       != #blank
        join sysLicenseCodeSort
        order by SortIdx
        where sysLicenseCodeSort.Id == sysConfig.id
    {
        fileOut += #space2  + #keywordCodeLine  + #spaceHash    + int2str(sysConfig.id + 1);
        fileOut += #space3  + #keywordValue     + #spaceHash    + sysConfig.value;
        fileOut += #space2  + "EndCodeLine";
        fileOut += #blank;
    }

    fileOut += #blank;
    fileOut += #space2  + "EndCodes";
    fileOut += #space1  + "EndLicense";

    // Begin file output
    perm.assert();

    sw = new System.IO.StreamWriter(#OutputFilename);

    for (i=1; i<=conLen(fileOut); i++)
    {
        sw.WriteLine(conPeek(fileOut, i));
    }

    sw.Flush();
    sw.Close();
    sw.Dispose();

    CodeAccessPermission::revertAssert();

    info("License successfully output to " + #OutputFilename);
}
 
Copied From http://www.alexondax.com/2011/01/how-to-export-license-keys-that-are.html
 

Sunday, 1 November 2015

Updating to AX 2012 R3 CU9 step by step with screen shots

1. Download from partner source or customer source.
  • AXUpdateInstaller
  • DynamicsAX2012R3-KB3063879-SlipStreamOnly
http://blogs.msdn.com/b/axsupport/archive/2014/06/04/10288907.aspx

2. Extract zip, then KB
3.Run Ax update in KB folder

4.
5.
6.
7.Follow below link
http://tech.alirazazaidi.com/dynamics-ax-2012-r3-cu9-update-step-by-step/

Put the system for application compilation and generate Full CIL and restart the AOS

8.Press ok
9.
 a. Run 'Detect update scripts'
 b. Before run Presynchronize setup  the server instance from System      administration-->setup-->system--> server configuration 
Select batch server group, as shown
10.Synchronize DataBase

11.Perform remaining tasks
Note:
                  Here only 'application version'will be updated to CU9 but not 'kernel version'. i.e., client needs to be updated. So run CU9 setup again and select "binary updates".
                  Before that  make sure uninstalled visual studio 2010 components and need to install Report viewer 2010


Monday, 12 October 2015

Creating a simple calculator in AX2012

To design above calculator

1.

 2.
method1:
public class FormRun extends ObjectRun
{
    real r;
    real a;
    str k;
    str s;
    real z;
}

method2:
public void init()
{
    super();
    r = 0;
}

3.Override cilcked method of every button

write below code for numbers from 0 to 9
 void clicked()
{
    super();
    r = 10*r+7;
    k = num2str(r,2,2,1,2);
    disply.text(k);
}

 4.For operators write below code
void clicked()
{
    super();
    s="-";
    a = r;
    r = 0;
    disply.text("-");
}

5.For %
void clicked()
{
    super();
    r = r*100/a;
    K = num2str(r,2,2,1,2);
    disply.text(k);

}


6.For = button write below code
void clicked()
{
    super();

    if(s=="+")
    {
        z = a+r;
        K = num2str(z,2,2,1,2);
        disply.text(k);

    }
    else if(s=="*")
    {
        z = a*r;
        K = num2str(z,2,2,1,2);
        disply.text(k);
    }
    else if(s=="-")
    {
        z = a-r;
        K = num2str(z,2,2,1,2);
        disply.text(k);
    }
    else if(s=="/")
    {
        z = a/r;
        K = num2str(z,2,2,1,2);
        disply.text(k);
    }
    a = 0;
    r = z;

}
Note: 'disply' is name of stringedit control...

Creation of dynamic timer in AX 2012









1.Create a form
2. Form>design>control>timeedit(Name : realTime)
3.Write form run methods
method1:
void updateRealTime()
{
    realTime.value(timenow());

    // Set a Time Out with the idle flag set to false
    this.setTimeOut(identifierstr(updateRealTime), 1000, false);
}
method2:
void run()
{
    super();
    this.updateRealTime();
}

Note:Here realTime is control name
Refer AOT>Form>tutorial_timer