I'm using F&O.
class CSDFieldsIntegration
{
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
[FormEventHandler(formStr(CSDInformation), FormEventType::PostRun)]
public static void CSDInformation_OnPostRun(xFormRun sender, FormEventArgs e)
{
BBBEECertIssueDate bBBEECertIssueDate;
BBBEECertIssueExpDate bBBEECertIssueExpDate;
BBBEECertNo bBBEECertNo;
BBBEECreatedBy bBBEECreatedBy;
BBBEECreatedDate bBBEECreatedDate;
BBBEEProReg bBBEEProReg;
BBBEEStatLevelOfContributor bBBEEStatLevelOfContributor;
BlackOwned blackOwned;
BlackOwnedRural blackOwnedRural;
BlackOwnedWomen blackOwnedWomen;
DirectorAppDate directorAppDate;
DirectorCellNo directorCellNo;
DirectorCompInvolvedIn directorCompInvolvedIn;
DirectorCountry directorCountry;
DirectorCreatedDate directorCreatedDate;
DirectorEditDate directorEditDate;
DirectorEmailAddress directorEmailAddress;
DirectorEthnicGroup directorEthnicGroup;
DirectorGender directorGender;
DirectorIDType directorIDType;
DirectorLastVerDate directorLastVerDate;
DirectorNames directorNames;
DirectorOwner directorOwner;
DirectorOwnership directorOwnership;
DirectorSAIDNo directorSAIDNo;
DirectorStatus directorStatus;
DirectorSurname directorSurname;
DirectorType directorType;
IncomeTaxNumber incomeTaxNumber;
SARSRegistered sARSRegistered;
TaxCreatedDate taxCreatedDate;
TaxEditDate taxEditDate;
PurchRFQTmpCompareRFQReply purchRFQReply;
PurchRFQReply = sender.datasource().cursor();
//LoginProperty loginProperty;
OdbcConnection odbcConnection;
Statement statement;
ResultSet resultSet;
LoginProperty myLoginProperty;
str sql, criteria;
int output;
SqlStatementExecutePermission perm;
str myUserName="axdbadmin";
str myPassword="gI8fkaEMpqdzcru9";
str myConnectionString;
;
// Set the information on the ODBC.
myConnectionString=strfmt("UID=%1;PWD=%2",myUserName,myPassword);
myLoginProperty = new LoginProperty();
myLoginProperty.setServer("ISDONEBOX");
myLoginProperty.setDatabase("CSD_prod_Dev");
myLoginProperty.setOther(myConnectionString);
//Create a connection to external database.
odbcConnection = new OdbcConnection(myLoginProperty);
if (odbcConnection)
{
Sql = strFmt("select CertificateIssueDate,CertificateExpiryDate,CertificateNumber,CertificateSignedBy,BlackOwnership,BlackWomanOwnership,[MDDirectorStatus].name,IncomeTaxNumber,SupplierDirectors.CountryTypeCode,SupplierDirectors.CreatedDate,SupplierDirectors.EditDate,SupplierDirectors.Email,SupplierDirectors.EthnicGroupCode,SupplierDirectors.GenderCode,SupplierDirectors.LastVerificationDate,SupplierDirectors.Name,SupplierDirectors.IsOwner,SupplierDirectors.OwnershipPercentage,SupplierDirectors.SAIDNumber,SupplierDirectors.Surname,SupplierContacts.CellphoneNumber,IsRegistered,SupplierDetailsTax.EditDate from dbo.SupplierDetailsBBBEE left join dbo.MDBBBEEStatusLevelOfContributor on SupplierDetailsBBBEE.StatusLevelOfContributorCode = MDBBBEEStatusLevelOfContributor.Code left join dbo.SupplierContacts on SupplierDetailsBBBEE.SupplierNumber = SupplierContacts.SupplierNumber left join dbo.SupplierDirectors on SupplierDirectors.SupplierNumber = SupplierContacts.SupplierNumber left join [MDDirectorStatus] on [MDDirectorStatus].Code = SupplierDirectors.DirectorStatusTypeCode left join SupplierDetailsTax on SupplierDirectors.SupplierNumber = SupplierDetailsTax.SupplierNumber");
//Assert permission for executing the sql string.
perm = new SqlStatementExecutePermission(sql);
perm.assert();
//Prepare the sql statement.
statement = odbcConnection.createStatement();
resultSet = statement.executeQuery(sql);
//Cause the sql statement to run,
//then loop through each row in the result.
while (resultSet.next())
{
ttsbegin;
purchRFQReply.clear();
purchRFQReply.bBBEECertIssueDate = resultSet.getString(1);
purchRFQReply.bBBEECertIssueExpDate = resultSet.getString(2);
purchRFQReply.bBBEECertNo = resultSet.getString(3);
purchRFQReply.bBBEECreatedBy = resultSet.getString(4);
purchRFQReply.blackOwned = resultSet.getString(5);
purchRFQReply.blackOwnedWomen = resultSet.getString(6);
purchRFQReply.directorStatus = resultSet.getString(7);
purchRFQReply.incomeTaxNumber = resultSet.getString(8);
purchRFQReply.directorCountry = resultSet.getString(9);
purchRFQReply.taxCreatedDate = resultSet.getString(10);
purchRFQReply.taxEditDate = resultSet.getString(11);
purchRFQReply.directorEmailAddress = resultSet.getString(12);
purchRFQReply.directorEthnicGroup = resultSet.getString(13);
purchRFQReply.directorGender = resultSet.getString(14);
purchRFQReply.directorLastVerDate = resultSet.getString(15);
purchRFQReply.directorNames = resultSet.getString(16);
purchRFQReply.directorOwner = resultSet.getString(17);
purchRFQReply.directorOwnership = resultSet.getString(18);
purchRFQReply.directorSAIDNo = resultSet.getString(19);
purchRFQReply.directorSurname = resultSet.getString(20);
purchRFQReply.directorCellNo = resultSet.getString(21);
purchRFQReply.sARSRegistered = resultSet.getString(22);
purchRFQReply.directorEditDate = resultSet.getString(23);
purchRFQReply.insert();
ttscommit;
}
//Close the connection.
resultSet.close();
statement.close();
}
else
{
error("Failed to log on to the database through ODBC.");
}
}
}