using System;
using Microsoft.Dynamics.BusinessConnectorNet;
namespace ReadAxRecord
{
class Program
{
static void Main(string[] args)
{
Axapta ax;
AxaptaRecord record;
Object Id, Brand, Year, mile;
try
{
// Create AX object and logon to AX
ax = new Axapta();
ax.Logon(null, null, null, null);
// Create an AxaptaRecord object from the
// table that will be used
using (record = ax.CreateAxaptaRecord("CarTable"))
{
// Execute the statement entered as parameter
record.ExecuteStmt("select * from %1
where %1.test like 'xa'");
// Loop through the result of the statement.
while (record.Found)
{
// Set our local variables to be
// equal to the fields in the table
// for the current record.
Id = record.get_Field("ID");
Brand = record.get_Field("BRAND");
Year = record.get_Field("YEAR");
mile = record.get_Field("MILE");
// Write the result to the console
Console.WriteLine(Id + "\t" +
Brand + "\t" +
Year + "\t" +
mile);
// Go to the next record in the result set
record.Next();
}
// End the AX session
ax.Logoff();
// Make sure the console stays up
// until a key is pressed
Console.ReadKey();
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
}
This is simple Code to get Invoice settlement amount data for customer payment in ax 2012. This data is after posting of data. select sum(SettleAmountCur) from custSettlement where custSettlement.TransRecId == custtrans.RecId If you want get settlement amount before posting than you can refer spectrans table.The table SpecTrans contains all the transactions marked for settlement for payment journal. while select spectrans join custtransopen join custtrans where spectrans.SpecCompany == ledgerjournaltrans.DataAreaId && spectrans.SpecTableId == ledgerjournaltrans.TableId && spectrans.SpecRecId == ledgerjournaltrans.RecId && spectrans.RefCompany == custtranssopen.DataAreaId && spectrans.RefTableId == custtranssopen.TableId && spectrans.RefRecId == custtranssopen.RecId && custtransopen.RefRecId == custtrans.RecId && custtransopen.AccountNum == custtrans.AccountNum { info...