|
|
#9 |
|
Участник
|
Вас интерисует работает ли соединение нормально? Да, нормально. Вот код:
X++: #NMF_WinPackDepartamentsUpdate
boolean checkODBCConnection()
{
//данные соединения
LoginProperty makeLoginProperty()
{
LoginProperty loginProperty;
;
loginProperty = new LoginProperty();
loginProperty.setDSN(#DSN_TEST_NAME);
loginProperty.setUsername(#SQL_USER_NAME);
loginProperty.setPassword(#SQL_USER_PASSWORD);
return loginProperty;
}
;
// проверяем ODBC соединение
try
{
conn = new OdbcConnection(makeLoginProperty());
return true;
}
catch
{
info(#ODBC_USER_ERROR);
return false;
}
}Вот код, создающий выражение, через которое идут запросы: X++: void prepare() { if(this.checkODBCConnection()) { statement = conn.createStatement(); } else { error(#ODBC_CONNECT_ERROR); } } X++: conn.ttsbegin(); while select organization join structure where (organization.NMF_GSMStructureId == structure.StructureId) && (structure.NMF_WinpakAccess == NoYes::Yes) exists join empltable where (emplTable.RpayHrmOrganistionId == organization.hrmOrganizationId) && (emplTable.PayResignedDate_RU == dateNull() || emplTable.PayResignedDate_RU > mkdate(2,9,2011)) { SqlCommand = strFmt("Insert INTO Account (AccountID,UserId, NodeID, Deleted,UserPriority,AcctName, TimeStamp) VALUES (%1,%2,%3,%4,%5,'%6','%7') ", 0, 1, 0, 0, 0, Global::strReplace(subStr(organization.description,1,30),"'",""), currentTime ); statement.executeUpdate(SqlCommand); } conn.ttscommit(); X++: conn.ttsbegin(); while(it.more()) { sqlCommand = strFmt("Insert INTO NFTabLayout (AccountId, UserID, NodeID, Deleted, UserPriority, TabName1, TabName2, TabName3, TabName4, TabName5,"+ "TabOrder, NF1, NF2, NF3, NF4, NF5, NF6, NF7, NF8, TimeStamp) VALUES (%1,%2,%3,%4,%5,'%6','%7','%8','%9','%10',%11,%12,%13,%14,%15,%16,%17,%18,%19,'%20')", it.value(), 1, 0, 0, 0, "Особисті данні", "Особисті данні", "Особисті данні", "Особисті данні", "Особисті данні", 1, 1, 2, 3, 4, 5, 6, 7, 8, currentTime ); statement.executeUpdate(sqlCommand); i = statement.getLastError(); it.next(); } conn.ttscommit(); it - итератор по сету с целочислеными значениями, которые нужны для вставки. |
|
|
|
|
|