|
Бух 3.0 В док ОперацияБух заполнить табличную часть | ☑ | ||
---|---|---|---|---|
0
04347
12.05.14
✎
10:14
|
1С Бух 3.0 (3.0.32.7). Необходимо в документе ОперацияБух заполнить табличную часть, делаю как в Бух 2.0 - не получается. Прошу помочь
&НаСервере Функция ЗаполнитьОбъект(НовыйОбъект,МОЛ) ВыборкаОС=ОстаткиОС(); РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей(); РегХозрасчетный.Отбор.Регистратор.Значение = НовыйОбъект.Ссылка; Для Каждого СтрокаОС Из ВыборкаОС Цикл НоваяЗапись = РегХозрасчетный.Добавить(); НоваяЗапись.Период=НовыйОбъект.Дата; НоваяЗапись.Регистратор = НовыйОбъект.Ссылка; НоваяЗапись.Организация = НовыйОбъект.Организация; НоваяЗапись.Содержание = "Корректировка стоимости ОС "; НоваяЗапись.Сумма = 1000; НоваяЗапись.СчетДт = ПланыСчетов.Хозрасчетный.ОСвОрганизации; БухгалтерскийУчет.УстановитьСубконто(НоваяЗапись.СчетДт, НоваяЗапись.СубконтоДт, "ОсновныеСредства", СтрокаОС.Ссылка); НоваяЗапись.СчетКт = ПланыСчетов.Хозрасчетный.Вспомогательный; сообщить(СтрокаОС.Наименование); РегХозрасчетный.Записывать = Истина; РегХозрасчетный.Записать(); КонецЦикла; КонецФункции &НаСервере Функция ОстаткиОС() Запрос = Новый Запрос(); Запрос.Текст = "ВЫБРАТЬ |ОсновныеСредства.Наименование, |ОсновныеСредства.Ссылка |ИЗ |Справочник.ОсновныеСредства КАК ОсновныеСредства "; Возврат Запрос.Выполнить().Выгрузить(); КонецФункции |
|||
1
salvator
12.05.14
✎
10:18
|
1. РегХозрасчетный.Отбор.Регистратор.Установить(НовыйОбъект.Ссылка);
2. Записать() - убрать за пределы цикла 3. Сообщить() на сервере - убрать |
|||
2
04347
12.05.14
✎
10:27
|
сделала, все равно не заполняет
Функция ЗаполнитьОбъект(НовыйОбъект,МОЛ) ВыборкаОС=ОстаткиОС(); РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей(); //РегХозрасчетный.Отбор.Регистратор.Значение = НовыйОбъект.Ссылка; РегХозрасчетный.Отбор.Регистратор.Установить(НовыйОбъект.Ссылка); Для Каждого СтрокаОС Из ВыборкаОС Цикл НоваяЗапись = РегХозрасчетный.Добавить(); НоваяЗапись.Период=НовыйОбъект.Дата; НоваяЗапись.Регистратор = НовыйОбъект.Ссылка; НоваяЗапись.Организация = НовыйОбъект.Организация; НоваяЗапись.Содержание = "Корректировка стоимости ОС "; НоваяЗапись.Сумма = 1000; НоваяЗапись.СчетДт = ПланыСчетов.Хозрасчетный.ОСвОрганизации; БухгалтерскийУчет.УстановитьСубконто(НоваяЗапись.СчетДт, НоваяЗапись.СубконтоДт, "ОсновныеСредства", СтрокаОС.Ссылка); НоваяЗапись.СчетКт = ПланыСчетов.Хозрасчетный.Вспомогательный; КонецЦикла; РегХозрасчетный.Записывать = Истина; РегХозрасчетный.Записать(); КонецФункции |
|||
3
salvator
12.05.14
✎
10:51
|
Функция должна что-то возвращать. Она вызывается где-то?
|
|||
4
Wobland
12.05.14
✎
10:58
|
(2) это оно с фотки пример берёт
|
|||
5
salvator
12.05.14
✎
11:00
|
+(3) Сам документ тоже неплохо бы записать было потом.
|
|||
6
04347
12.05.14
✎
12:07
|
(5) сам документ записывается, функцию попробовала заменить на процедуру. Табличная часть все равно не заполняется
|
|||
7
Wobland
12.05.14
✎
12:23
|
ничего, что у него ТЧ нет. совсем. напрочь
|
|||
8
Segate
12.05.14
✎
12:35
|
(7) а вдруг у него табличное поле по сведениям из регистра заполняется</ванга>
|
|||
9
salvator
12.05.14
✎
12:36
|
(6) Не видно, где он записывается?
|
|||
10
04347
12.05.14
✎
13:23
|
(7)в этом и сложность, что нет табличного поля, поэтому и вызываются регистры бухгалтерии
|
|||
11
04347
12.05.14
✎
13:42
|
(9) если вставить
НовыйОбъект.Комментарий="МОЛ: "+Строка(МОЛ); КонецФункции то комментарий меняется в зависимости от того, какое Мол(физ лицо) выбрали. |
|||
12
Wobland
12.05.14
✎
13:48
|
(10) а вот ТП на форме как раз есть
где-то ты врёшь |
|||
13
04347
12.05.14
✎
14:00
|
(9) полный текст обработки
Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначенияМассив) Экспорт //Откроем форму выбора МОЛ ЭтаФорма.ОткрытьМодально(120); Если Объект.МОЛ.Пустая() Тогда Возврат; //Не выбран МОЛ или закрытие формы по таймауту КонецЕсли; //Спросим у пользователя разрешение на продолжение обработки Режим = РежимДиалогаВопрос.ДаНет; Текст = "Табличная часть документа будет заменена новыми данными. |Продолжить?"; Ответ = Вопрос(Текст, Режим, 0); Если Ответ = КодВозвратаДиалога.Да Тогда Для каждого Элемент из ОбъектыНазначенияМассив Цикл КлючПоиска = Новый Структура("Ключ", Элемент); Окна = ПолучитьОкна(); Для каждого Окно из Окна Цикл Если НЕ Окно.Основное И Найти(Окно.Заголовок, Элемент) Тогда Форма = ОткрытьФорму("Документ.ОперацияБух.Форма.ФормаДокумента",КлючПоиска,,,Окно); НовыйОбъект = Форма.Объект; ЗаполнитьОбъект(НовыйОбъект,Объект.МОЛ); //После выполнения процедуры на сервере мы получаем изменную переменную НовыйОбъект, //которую необходимо передать в уже полученную нами форму КопироватьДанныеФормы(НовыйОбъект, Форма.Объект); Форма.Записать(); КонецЕсли; КонецЦикла; КонецЦикла; КонецЕсли; КонецПроцедуры &НаСервере Функция ЗаполнитьОбъект(НовыйОбъект,МОЛ) ВыборкаОС=ОстаткиОС(); РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей(); РегХозрасчетный.Отбор.Регистратор.Установить(НовыйОбъект.Ссылка); Для Каждого СтрокаОС Из ВыборкаОС Цикл НоваяЗапись = РегХозрасчетный.Добавить(); НоваяЗапись.Период=НовыйОбъект.Дата; НоваяЗапись.Регистратор = НовыйОбъект.Ссылка; НоваяЗапись.Организация = НовыйОбъект.Организация; НоваяЗапись.Содержание = "Корректировка стоимости ОС "; НоваяЗапись.Сумма = 1000; НоваяЗапись.СчетДт = ПланыСчетов.Хозрасчетный.ОСвОрганизации; БухгалтерскийУчет.УстановитьСубконто(НоваяЗапись.СчетДт, НоваяЗапись.СубконтоДт, "ОсновныеСредства", СтрокаОС.Ссылка); НоваяЗапись.СчетКт = ПланыСчетов.Хозрасчетный.Вспомогательный; КонецЦикла; РегХозрасчетный.Записывать = Истина; РегХозрасчетный.Записать(); НовыйОбъект.Комментарий="МОЛ: "+Строка(МОЛ); КонецФункции &НаСервере Функция ОстаткиОС() Запрос = Новый Запрос(); Запрос.Текст = "ВЫБРАТЬ |ОсновныеСредства.Наименование, |ОсновныеСредства.Ссылка |ИЗ |Справочник.ОсновныеСредства КАК ОсновныеСредства "; Возврат Запрос.Выполнить().Выгрузить(); КонецФункции &НаКлиенте Процедура ЗаполнитьПоМОЛ(Команда) ЭтаФорма.Закрыть(Объект.МОЛ); КонецПроцедуры |
|||
14
04347
12.05.14
✎
14:01
|
(12) наверное не вру, а не понимаю. Поэтому и не работает
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |