Цитата(Prospero @ 17.11.2006, 19:39)

не дочитал пару страниц - там текст твоей процедуры...
Я всё прочитал и Создание процедуры записи данных и даже Создание процедуры чтения данных
и сделал всё как написано, или почти как написано, а так как книга отсканирована и в тексте попадаются опечатки, может из-за этого.
вот текст обеих процедур если не трудно сверте с оригиналом
Процедура ЗаписатьСообщениеСИзменениями()Экспорт
Сообщить("-------- Выгрузка в узел" + Строка(ЭтотОбъект) + " --------");
Каталог = КаталогВременныхФайлов();
// Сформировать имя временного файла
ИмяФайла = Каталог + ?(Прав(Каталог, 1) = "\","", "\") +
"Message" + СокрЛП(ПланыОбмена.Филиалы.ЭтотУзел).Код() +
"_" + СокрЛП(Ссылка.Код) + ".xml";
// Создать объект записи XML
//*** запись XML документов
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл(ИмяФайла);
ЗаписьXML.ЗаписатьОбъявлениеXML();
//*** инфраструктура сообщений
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, Ссылка);
Сообщить("-------- Номер сообщения; --------" + ЗаписьСообщения.НомерСообшения);
// Получить выборку измененных данных //*** механизм регистрации изменений
ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(ЗаписьСообщения.Получатель,ЗаписьСообщения.НомерСообщения);
Пока ВыборкаИзменений.Следующий() Цикл
// Записать данные в сообщение
//***XML-сериализация
ЗаписатьXML(ЗаписьXML,ВыборкаИзменений.Получить());
КонецЦикла;
ЗаписьСообщения.ЗакончитьЗапись();
ЗаписьXML.Закрыть();
Сообщить("-------- Конец выгрузки --------");
КонецПроцедуры
Процедура ПрочитатьСообщениеСИзменениями()Экспорт
Каталог = КаталогВременныхФайлов();
// Сформировать имя файла
ИмяФайла = Каталог + ? (Прав(Каталог, 1) = "\","", "\") + "Massage" +
СокрЛП(Ссылка.Код) + " - " +
СокрЛП(ПланыОбмена.Филиалы.ЭтотУзел().Код) + "xml.";
Файл = Новый Файл(ИмяФайла);
Если Не Файл.Существует() Тогда
Возврат;
КонецЕсли;
//*** Чтение документов XML
// Попытаться открыть файл
ЧтениеXML = Новый ЧтениеXML;
Попытка
ЧтениеXML.ОткрытьФайл(ИмяФайла);
Исключение
Сообщить("Не возможно открыть файл с данными.");
Возврат;
КонецПопытки;
Сообщить("------- Загрузка из " + Строка(ЭтотОбъект) + "--------");
Сообщить("-Считывается файл" + ИмяФайла);
// Загрузить из найденного файла
//***Инфракструктура сообщений
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
// Читать заголовок сообщения обмена данными - файла XML
ЧтениеСообщения.НачатьЧтение(ЧтениеXML);
// Сообщение предназначено не для этого узла
Если ЧтениеСообщения.Отправитель <> Ссылка Тогда
ВызватьИсключение "Не верный узел";
КонецЕсли;
// Удаляем регистрацию изменений
// для узла отправителя сообщений
//***служба регистрации изменений
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель,ЧтениеСообщения.НомерПринятого);
// Читаем данные из сообщения
//***XML-сериализация
Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл
// читаем очередное значение
Данные = ПрочитатьXML(ЧтениеXML);
// Не переносим изменение полученное
// в главный из неглавного
// если есть регистрация изменения
Если Не ЧтениеСообщения.Отправитель.Главный И ПланыОбмена.ИзменениеЗарегистрировано(ЧтениеСообщения.Отправитель,Данные) Тогда
Сообщить("-Изменения отклонены-");
Продолжить;
КонецЕсли;
// Записать полученные данные
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
Данные.ОбменДанными.Загрузка = Истина;
Данные.Записать();
КонецЦикла;
ЧтениеСообщения.ЗакончитьЧтение();
ЧтениеXML.Закрыть();
УдалитьФайлы(ИмяФайла);
Сообщить("-------- Конец загрузки --------");
КонецПроцедуры
Цитата(Sergik @ 17.11.2006, 23:41)

Я всё прочитал и Создание процедуры записи данных и даже Создание процедуры чтения данных
и сделал всё как написано, или почти как написано, а так как книга отсканирована и в тексте попадаются опечатки, может из-за этого.
вот текст обеих процедур если не трудно сверте с оригиналом
Процедура ЗаписатьСообщениеСИзменениями()Экспорт
Сообщить("-------- Выгрузка в узел" + Строка(ЭтотОбъект) + " --------");
Каталог = КаталогВременныхФайлов();
// Сформировать имя временного файла
ИмяФайла = Каталог + ?(Прав(Каталог, 1) = "\","", "\") +
"Message" + СокрЛП(ПланыОбмена.Филиалы.ЭтотУзел).Код() +
"_" + СокрЛП(Ссылка.Код) + ".xml";
// Создать объект записи XML
//*** запись XML документов
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл(ИмяФайла);
ЗаписьXML.ЗаписатьОбъявлениеXML();
//*** инфраструктура сообщений
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
ЗаписьСообщения.НачатьЗапись(ЗаписьXML, Ссылка);
Сообщить("-------- Номер сообщения; --------" + ЗаписьСообщения.НомерСообшения);
// Получить выборку измененных данных //*** механизм регистрации изменений
ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(ЗаписьСообщения.Получатель,ЗаписьСообщения.НомерСообщения);
Пока ВыборкаИзменений.Следующий() Цикл
// Записать данные в сообщение
//***XML-сериализация
ЗаписатьXML(ЗаписьXML,ВыборкаИзменений.Получить());
КонецЦикла;
ЗаписьСообщения.ЗакончитьЗапись();
ЗаписьXML.Закрыть();
Сообщить("-------- Конец выгрузки --------");
КонецПроцедуры
Процедура ПрочитатьСообщениеСИзменениями()Экспорт
Каталог = КаталогВременныхФайлов();
// Сформировать имя файла
ИмяФайла = Каталог + ? (Прав(Каталог, 1) = "\","", "\") + "Massage" +
СокрЛП(Ссылка.Код) + " - " +
СокрЛП(ПланыОбмена.Филиалы.ЭтотУзел().Код) + "xml.";
Файл = Новый Файл(ИмяФайла);
Если Не Файл.Существует() Тогда
Возврат;
КонецЕсли;
//*** Чтение документов XML
// Попытаться открыть файл
ЧтениеXML = Новый ЧтениеXML;
Попытка
ЧтениеXML.ОткрытьФайл(ИмяФайла);
Исключение
Сообщить("Не возможно открыть файл с данными.");
Возврат;
КонецПопытки;
Сообщить("------- Загрузка из " + Строка(ЭтотОбъект) + "--------");
Сообщить("-Считывается файл" + ИмяФайла);
// Загрузить из найденного файла
//***Инфракструктура сообщений
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
// Читать заголовок сообщения обмена данными - файла XML
ЧтениеСообщения.НачатьЧтение(ЧтениеXML);
// Сообщение предназначено не для этого узла
Если ЧтениеСообщения.Отправитель <> Ссылка Тогда
ВызватьИсключение "Не верный узел";
КонецЕсли;
// Удаляем регистрацию изменений
// для узла отправителя сообщений
//***служба регистрации изменений
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель,ЧтениеСообщения.НомерПринятого);
// Читаем данные из сообщения
//***XML-сериализация
Пока ВозможностьЧтенияXML(ЧтениеXML) Цикл
// читаем очередное значение
Данные = ПрочитатьXML(ЧтениеXML);
// Не переносим изменение полученное
// в главный из неглавного
// если есть регистрация изменения
Если Не ЧтениеСообщения.Отправитель.Главный И ПланыОбмена.ИзменениеЗарегистрировано(ЧтениеСообщения.Отправитель,Данные) Тогда
Сообщить("-Изменения отклонены-");
Продолжить;
КонецЕсли;
// Записать полученные данные
Данные.ОбменДанными.Отправитель = ЧтениеСообщения.Отправитель;
Данные.ОбменДанными.Загрузка = Истина;
Данные.Записать();
КонецЦикла;
ЧтениеСообщения.ЗакончитьЧтение();
ЧтениеXML.Закрыть();
УдалитьФайлы(ИмяФайла);
Сообщить("-------- Конец загрузки --------");
КонецПроцедуры
для меня это очень важно