Показать сообщение отдельно
Старый 09.11.2007, 11:22   #6  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,712 / 1201 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Я не знаю, что такое метод save(). Видимо, это какой-то специфический метод NET-коннектора. Поэтому могу только дать совет общего плана.

Идея коннекторов заключается в том, что Вы работаете в собственной среде программирования, но так, как будто Вы работаетет в среде Axapta. Можно сказать, что это некий аналог подключения по ADO или ODBC к внешней базе.

Поэтому, если у Вас стоит задача выполнить некую модификацию в Axapta, то и решать эту задачу надо средствами самой Axapta. А потом просто "перевести" этот код в синтаксис коннекторов.

Как бы Вы решали задачу модификации в среде Axapta? Ну, очевидно, как-то так:

X++:
myTab = MyTab::find(myTabId, true);
if (myTab)
{
	myTab.field1 = "Новое значение";
	myTab.update();
}
Значит, именно так и надо решать эту же задачу через коннектор. С поправкой на соответствующие команды и функции.

Example (Visual Basic)

PHP код:
Dim Axapta As Object 

Dim MyRecord 
As Object 

Set Axapta 
CreateObject("AxaptaCOMConnector.Axapta"
Axapta.Logon 

‘ create an Axapta record 

Set MyRecord 
Axapta.CallStaticRecordMethod("MyTable","Find",MyTabId,TRUE

If 
MyRecord.Found Then

‘ set fields of record
  MyRecord
.Field("Field1") = "Новое значение"

‘ update the record
  MyRecord
.Update

End 
If