Экспорт через обмен бизнес документами

Администрирование баз данных (Pervasive.SQL, MS SQL, Oracle, утилита Support)

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Гапоненко
Посетитель
Сообщения: 49
Зарегистрирован: 01 апр 2009, 14:20

Экспорт через обмен бизнес документами

Сообщение Гапоненко »

Доброго времени суток!
Уважаемые форумчане, подскажите, пожалуйста, такую тему.

Есть выгрузка приходных накладных из Галактической базы для 1с.
Все нормально выгружается, но теперь стоит задача, чтобы в эту выгрузку попали номера ГТД.
ГТД заполняется стандартно в атрибутах партий
Партионный учет ведется, к каждой позиции партия заполняется.
Помогите вытащить ГТД через обмен бизнес документами при выгрузке приходных накладных
Gal 8.10 SQL 2000
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

Txo функции(TxoGetFieldValue например) работаю везде, а если не работают то нужно выполнить InitServTxo(0). Если есть связь main.c_nrec->slave.nrec то любые поля из slave можно достать. Ну есть еще фейс для допобработки экспорта-импорта - ищите на форуме ExpImpScript.
Гапоненко
Посетитель
Сообщения: 49
Зарегистрирован: 01 апр 2009, 14:20

Сообщение Гапоненко »

edward
спасибо, буду пробовать.
Gal 8.10 SQL 2000
Гапоненко
Посетитель
Сообщения: 49
Зарегистрирован: 01 апр 2009, 14:20

Сообщение Гапоненко »

edward_K писал(а):нужно выполнить InitServTxo(0).
Извиняюсь. Но это где нужно выполнить??? если можно поподробней.
Gal 8.10 SQL 2000
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

if(initservTxo(0),.....,'')
для начала поэксперементируйте во внешних атрибутах по ctrl+F4
Гапоненко
Посетитель
Сообщения: 49
Зарегистрирован: 01 апр 2009, 14:20

Сообщение Гапоненко »

И еще не нашел у себя ExpImpScript.vih.
Может, кто подкинет нуждающемуся...
Gal 8.10 SQL 2000
galover
Местный житель
Сообщения: 794
Зарегистрирован: 16 ноя 2007, 13:52

Сообщение galover »

Код: Выделить всё

//******************************************************************************
//                                                      (c) корпорация Галактика
// Галактика 8.10 - обмен бизнес-документами
// Объектный интерфейс pre и post-обработки данных для экспорта/импорта
//******************************************************************************

// ObjExpImpScript - вызвается интерфейсами до/после экспорта/импорта документов.
// При экспорте он вызывает после выгрузки данных, при импорте - до загрузки.
// Сторонние разработчики могут написать свои реализации этого объектного интерфейса,
// чтобы привести данные в файле к нужному формату до импорта или после экспорта.

#ifndef __ObjExpImpScript__
#define __ObjExpImpScript__


#ifdef ComponentVersion
#component "C_EXPIMP"
#endif

#doc
  Объектный интерфейс pre и post-обработки данных для экспорта/импорта.<br>
  Методы ObjExpImpScript вызваются до/после экспорта/импорта документов. <br>
#end
ObjInterface ObjExpImpScript;
#doc
  Процедура pre-обработки данных для экспорта. Вызывается до открытия файла-приемника. <br>
  cIEHead - ссылка на настройку экспорта. <br>
  sFileName - полный путь к файлу. <br>
#end
  procedure BeforeExport(cIEHead : comp; sFileName : string);

#doc
  Процедура post-обработки данных для экспорта. Вызывается после закрытия файла-приемника. <br>
  cIEHead - ссылка на настройку экспорта. <br>
  sFileName - полный путь к файлу. <br>
#end
  procedure AfterExport(cIEHead : comp; sFileName : string);

#doc
  Процедура pre-обработки данных для импорта. Вызывается до открытия файла-источника. <br>
  cIEHead - ссылка на настройку импорта. <br>
  sFileName - полный путь к файлу. <br>
#end
  procedure BeforeImport(cIEHead : comp; sFileName : string);

#doc
  Процедура post-обработки данных для импорта. Вызывается после закрытия файла-источника. <br>
  cIEHead - ссылка на настройку импорта. <br>
  sFileName - полный путь к файлу. <br>
#end
  procedure AfterImport(cIEHead : comp; sFileName : string);
end;



//------------------------------------------------------------------------------
// Точки расширения для пре-пост-методов экспорта-импорта.
//------------------------------------------------------------------------------

//------------------------------------------------------------------------------
#doc
Точка расширения перед экспортом.<br>
</brief>
  Процедура pre-обработки данных для экспорта. Вызывается до открытия файла-приемника. <br>
  cIEHead - ссылка на настройку экспорта. <br>
  sFileName - полный путь к файлу. <br>
#end
ExtensionPoint epBeforeExport(cIEHead : comp; sFileName : string);

//------------------------------------------------------------------------------
#doc
Точка расширения после экспорта.<br>
</brief>
  Процедура post-обработки данных для экспорта. Вызывается после закрытия файла-приемника. <br>
  cIEHead - ссылка на настройку экспорта. <br>
  sFileName - полный путь к файлу. <br>
#end
ExtensionPoint epAfterExport(cIEHead : comp; sFileName : string);

//------------------------------------------------------------------------------
#doc
Точка расширения pre-обработки данных для импорта.<br>
</brief>
  Процедура pre-обработки данных для импорта. Вызывается до открытия файла-источника. <br>
  cIEHead - ссылка на настройку импорта. <br>
  sFileName - полный путь к файлу. <br>
#end
ExtensionPoint epBeforeImport(cIEHead : comp; sFileName : string);

//------------------------------------------------------------------------------
#doc
Точка расширения post-обработки данных для импорта.<br>
</brief>
  Процедура post-обработки данных для импорта. Вызывается после внедрения импртированных записей в БД. <br>
  cIEHead - ссылка на настройку импорта. <br>
  sFileName - полный путь к файлу. <br>
#end
ExtensionPoint epAfterImport(cIEHead : comp; sFileName : string);

#endif


#include ieFun.vih

ieFun.vih

Код: Выделить всё

//******************************************************************************
//                                                      (c) корпорация Галактика
// Галактика 8.10 - обмен бизнес-документами
// Объектный интерфейс функции  экспорта/импорта
//******************************************************************************

#ifndef __ObjIeFun__
#define __ObjIeFun__

#ifdef ComponentVersion
#component "C_EXPIMP"
#endif

#doc
  Объектный интерфейс функции экспорта импорта <br>
#end

ObjInterface ObjIeFun;

#doc
Спозиционироваться на текущую настройку <br>
#end
Procedure SetCurIEHead(cIEHead: comp);

#doc
Получить колличество ошибок импорта <br>
#end
function  Get_lImportErrorsCounter : Longint;
function  Set_lImportErrorsCounter  ( kol : Longint ) : Longint;
function  Get_sCurFieldName : string;
#doc
Установиить текущее поле для вывода ошибки <br>
#end
Procedure Set_sCurFieldName  ( name : string );

#doc
StartLogOperation - начало журнализации операции экспорта-импорта. <br>
#end
Procedure StartLogOperation(sSourceName : String; cIEHead: comp);

#doc
FinishLogOperation - соответственно, окончание той самой операции  <br>
#end
Procedure FinishLogOperation(sSourceName : String; wStatus : Word; cIEHead: comp);

#doc
LogDocument - Создать запись в ExImLogR для импортированной-экспортированной записи документа. <br>
#end
Procedure LogDocument(cDocument : Comp; wStatus : Word; Value : String; cIEHead: comp);

#doc
Записать ошибку  <br>
#end
procedure LogError(cLogR : comp; wStatus : word; sValue : string);

#doc
UpdateImportLog - перепривязать логи привязанные к временной таблице, на импортированный документ <br>
#end
Procedure UpdateImportLog(ctDocument : Comp; cDocument : Comp; wStatus : Word);

#doc
Удалить из все ExImLogR импортированные но не вставленные в бд записи <br>
#end
Procedure DeleteAllTempLogR;
Procedure UpdateLogError (ctDocument : Comp);


#doc
ConvertToDate - преобразовать строку в дату в соответствии с настройкой  <br>
#end
Function ConvertToDate( sFieldValue : String ) : date;

#doc
ConvertFromDate - преобразовать дату в строку в соответствии с настройкой <br>
#end
Function ConvertFromDate( dFieldValue : date ) : String;

#doc
  fun.DuplicatesImportType -
#end
Function DuplicatesImportType : Byte;

#doc
  ThisCodePresentInTune - <br>
#end
Function ThisCodePresentInTune( wCode : Word ) : Boolean;


end;

VipInterface IeFun implements ObjIeFun licensed(free);

#endif
Гапоненко
Посетитель
Сообщения: 49
Зарегистрирован: 01 апр 2009, 14:20

Сообщение Гапоненко »

СПАСИБО!!!! :-)
Gal 8.10 SQL 2000
Ответить