Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / Не заполняется табличная часть при вводе документа на основании / 7 сообщений из 7, страница 1 из 1
30.08.2010, 12:56
    #36818826
Glikeria
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не заполняется табличная часть при вводе документа на основании
Здравствуйте!Скажите,пожалуйста,почему при выполнении следующей обработки табличная часть документа ВозвратНаРаботу не заполняется?Спасибо.
Запрос=Новый Запрос("ВЫБРАТЬ
| СостояниеПоДокументуОтпускаОрганизаций.Организация,
| СостояниеПоДокументуОтпускаОрганизаций.Сотрудник,
| СостояниеПоДокументуОтпускаОрганизаций.Состояние КАК ВидОтпуска,
| МИНИМУМ(СостояниеПоДокументуОтпускаОрганизаций.Период) КАК ДатаНачалаОтпуска,
| СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения КАК ДатаОкончанияОтпуска,
| ДОБАВИТЬКДАТЕ(СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения, ДЕНЬ, 1) КАК ДатаОкончанияОтпускаПлюсОдинДень,
| СостояниеРаботниковОрганизаций.Период КАК ДатаНачалаСостоянияПослеОтпуска,
| СостояниеРаботниковОрганизаций.ПериодЗавершения КАК ДатаЗавершенияСостоянияПослеОтпуска,
| СостояниеРаботниковОрганизаций.Состояние,
| СостояниеРаботниковОрганизаций.СостояниеЗавершения
|ИЗ
| РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеПоДокументуОтпускаОрганизаций
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций
| ПО СостояниеПоДокументуОтпускаОрганизаций.Организация = СостояниеРаботниковОрганизаций.Организация
| И СостояниеПоДокументуОтпускаОрганизаций.Сотрудник = СостояниеРаботниковОрганизаций.Сотрудник
| И (СостояниеРаботниковОрганизаций.Состояние <> ЗНАЧЕНИЕ(Перечисление.СостоянияРаботникаОрганизации.Работает))
| И (ДОБАВИТЬКДАТЕ(СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения, ДЕНЬ, 1) <= СостояниеРаботниковОрганизаций.Период)
|ГДЕ
//| СостояниеПоДокументуОтпускаОрганизаций.Регистратор.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания

| СостояниеПоДокументуОтпускаОрганизаций.Регистратор ССЫЛКА Документ.ОтпускаОрганизаций
|
|СГРУППИРОВАТЬ ПО
| СостояниеПоДокументуОтпускаОрганизаций.Организация,
| СостояниеПоДокументуОтпускаОрганизаций.Сотрудник,
| СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения,
| СостояниеРаботниковОрганизаций.Период,
| СостояниеРаботниковОрганизаций.ПериодЗавершения,
| СостояниеРаботниковОрганизаций.Состояние,
| СостояниеРаботниковОрганизаций.СостояниеЗавершения,
| СостояниеПоДокументуОтпускаОрганизаций.Состояние");

Запрос.УстановитьПараметр("Работает",Перечисления.СостоянияРаботникаОрганизации.Работает);
//Запрос.УстановитьПараметр("ДатаНачала",ДатаНачала);

//Запрос.УстановитьПараметр("ДатаОкончания",ДатаОкончания);


Результат=Запрос.Выполнить();
Запрос.Выполнить().Выгрузить();
Выборка=Результат.Выбрать();

Пока Выборка.Следующий() Цикл

ДокументОбъект=Документы.ВозвратНаРаботуОрганизаций.СоздатьДокумент();
ДокументОбъект.Заполнить(ВЫБОРКА.Ссылка);
ДокументОбъект.Дата=ТекущаяДата();
ДокументОбъект.Записать();
//ДокументОбъект.ПолучитьФорму().Открыть();
...
Рейтинг: 0 / 0
30.08.2010, 15:13
    #36819279
vitkhv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не заполняется табличная часть при вводе документа на основании
Glikeria,

Может потому, что надо указать Табличную часть которую надо заполнить?
...
Рейтинг: 0 / 0
30.08.2010, 15:19
    #36819300
Glikeria
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не заполняется табличная часть при вводе документа на основании
А как это можно сделать?Я пыталсь,но мне при выполнении обработки выдавались ошибки.А может быть дело в процедуре ОработкаЗаполнения?
...
Рейтинг: 0 / 0
30.08.2010, 15:28
    #36819332
vitkhv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не заполняется табличная часть при вводе документа на основании
GlikeriaА как это можно сделать?Я пыталсь,но мне при выполнении обработки выдавались ошибки.А может быть дело в процедуре ОработкаЗаполнения?


1. Вы понимаете, что вообще метод Заполнить() делает? Он вызывает процедуру ОбработкаЗаполнения() в модуле документа, а какой там у вас алгоритм никому здесь не известно.

2. Заполнить(Выборка.Ссылка), где вы в Запросе получаете ссылку, которую пытаетесь передать?

3. Почитайте сначала книжки в конце концов.
...
Рейтинг: 0 / 0
30.08.2010, 15:57
    #36819427
Glikeria
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не заполняется табличная часть при вводе документа на основании
Да,дело в процедуре ОбработкаЗаполнения,спасибо.
...
Рейтинг: 0 / 0
30.08.2010, 21:06
    #36819991
Glikeria
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не заполняется табличная часть при вводе документа на основании
А почему может быть следующая ситуация:в отладике всё правильно,но при этом если открыть документ ВозвратНаРаботуОрганизаций табличная часть всё равно не заполняется?
...
Рейтинг: 0 / 0
31.08.2010, 11:25
    #36820611
Glikeria
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не заполняется табличная часть при вводе документа на основании
Я изменилапроцедуру заполнения заменила на перебор.Как можно обратиться к полям табличной части документа-регистратора?Мне,например,надо добавить ДатуОкончания из табличной части,но выдаётся следующее сообщение:Нельзя обратиться к вложенной таблице составного типа.Что можно сделать?
Запрос=Новый Запрос("ВЫБРАТЬ
| СостояниеПоДокументуОтпускаОрганизаций.Организация,
| СостояниеПоДокументуОтпускаОрганизаций.Сотрудник,
| СостояниеПоДокументуОтпускаОрганизаций.Состояние КАК ВидОтпуска,
| СостояниеПоДокументуОтпускаОрганизаций.Период КАК ДатаНачалаОтпуска,
| СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения КАК ДатаОкончанияОтпуска,
| ДОБАВИТЬКДАТЕ(СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения, ДЕНЬ, 1) КАК ДатаОкончанияОтпускаПлюсОдинДень,
| СостояниеРаботниковОрганизаций.Период КАК ДатаНачалаСостоянияПослеОтпуска,
| СостояниеРаботниковОрганизаций.ПериодЗавершения КАК ДатаЗавершенияСостоянияПослеОтпуска,
| СостояниеРаботниковОрганизаций.Состояние,
| СостояниеРаботниковОрганизаций.СостояниеЗавершения,
| СостояниеРаботниковОрганизаций.Регистратор КАК Ссылка,
| СостояниеРаботниковОрганизаций.Регистратор.Комментарий КАК Комментарий
|ИЗ
| РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеПоДокументуОтпускаОрганизаций
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций
| ПО СостояниеПоДокументуОтпускаОрганизаций.Организация = СостояниеРаботниковОрганизаций.Организация
| И СостояниеПоДокументуОтпускаОрганизаций.Сотрудник = СостояниеРаботниковОрганизаций.Сотрудник
| И (СостояниеРаботниковОрганизаций.Состояние <> ЗНАЧЕНИЕ(Перечисление.СостоянияРаботникаОрганизации.Работает))
| И (ДОБАВИТЬКДАТЕ(СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения, ДЕНЬ, 1) <= СостояниеРаботниковОрганизаций.Период)
|ГДЕ
| СостояниеПоДокументуОтпускаОрганизаций.Регистратор ССЫЛКА Документ.ОтпускаОрганизаций
| И СостояниеПоДокументуОтпускаОрганизаций.Регистратор.Проведен
|ИТОГИ ПО
| Ссылка");

Запрос.УстановитьПараметр("Работает",Перечисления.СостоянияРаботникаОрганизации.Работает);
//Запрос.УстановитьПараметр("ДатаНачала",);
//Запрос.УстановитьПараметр("ДатаОкончания",ДатаОкончания);

Результат=Запрос.Выполнить();

Выборка=Результат.Выбрать();
Пока Выборка.Следующий() Цикл
ДокументОбъект=Документы.ВозвратНаРаботуОрганизаций.СоздатьДокумент();
ДокументОбъект.Комментарий=Выборка.Комментарий;
ДокументОбъект.Организация=Выборка.Организация;
РаботникОрганизации=ДокументОбъект.РаботникиОрганизации.Добавить();
РаботникОрганизации.Сотрудник=Выборка.Сотрудник;
РаботникОрганизации.ДатаВозврата=Выборка.ДатаОкончанияОтпуска;

ДокументОбъект.Дата=ТекущаяДата();




КонецЦикла;
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Не заполняется табличная часть при вводе документа на основании / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]