Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Прописать условие по заполнению реквизита документа в модуле другого документа          
SemenYU Подменю пользователя
сообщение 28.02.20, 13:06
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Добрый день. Данные УПП (1.3.66.1) , 1С:Предприятие 8.3 (8.3.10.2466)
Помогите пожалуйста.
Есть документ ГТД по импорту. Он создаётся на основании Поступления товаров и услуг и Поступление Товаров Услуг В НТТ
Необходимо прописать условие, по которому Если в документе-основании не стоит флажок ОтражатьВБухгалтерскомУчете , то и в документе ГТД по импорту он тоже не стоит
Процедура ОбработкаЗаполнения(Основание)
    ПоступлениеТоваров    = (ТипЗнч(Основание) = Тип("ДокументСсылка.ПоступлениеТоваровУслуг"));
    ПоступлениеТоваровНТТ = (ТипЗнч(Основание) = Тип("ДокументСсылка.ПоступлениеТоваровУслугВНТТ"));

    
    Если ЗначениеЗаполнено(Основание) Тогда
        Если НЕ Основание.ОтражатьВБухгалтерскомУчете Тогда
            ОтражатьВБухгалтерскомУчете = Ложь;
            
        КонецЕсли;
    КонецЕсли;


Так же необходимо при том же условии скрыть доступность реквизита в ГТД по импорту. (с этим даже нет вариантов).
Заранее спасибо

Vofka Подменю пользователя
сообщение 28.02.20, 14:55
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Код можно сделать немного красивее:
Процедура ОбработкаЗаполнения(Основание)    
    Если ЗначениеЗаполнено(Основание) Тогда
        ОтражатьВБухгалтерскомУчете = Основание.ОтражатьВБухгалтерскомУчете;
    КонецЕсли;
//...
КонецПроцедуры

Но итоговый результат будет одинаковый.

Как звучит итоговая задача? Флажек ОтражатьВБухгалтерскомУчете должен иметь такое же значение, как в документе основании? Если да, то в ПередЗаписью просто прописать:
ОтражатьВБухгалтерскомУчете = Основание.ОтражатьВБухгалтерскомУчете;

SemenYU Подменю пользователя
сообщение 28.02.20, 15:28
Сообщение #3

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Vofka @ Сегодня, 14:55 * ,
Итоговая задача звучит так:
Поставить реквизит "ОтражатьВБухгалтерскомУчете" документа ГТД по импорту в состояние Ложь и убрать доступность, если данный документ создаётся на основании Поступления товаров и услуг и Поступление Товаров Услуг В НТТ и в этих документах реквизит "ОтражатьВБухгалтерскомУчете" в состояние Ложь.

SemenYU Подменю пользователя
сообщение 28.02.20, 17:31
Сообщение #4

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

SemenYU @ Сегодня, 15:28 * ,
Важно именно прописать это при заполнении документа, чтоб пользователю не делать лишних движений и не обращать внимание на флажек бух. учёт

TohaMonster Подменю пользователя
сообщение 02.03.20, 8:47
Сообщение #5

Говорящий
***
Группа: Пользователи
Сообщений: 70
Спасибо сказали: 29 раз
Рейтинг: 29

Флажок "ОтражатьВБухгалтерскомУчете" может установиться уже после ОбработкаЗаполнения(). См. модуль формы ПриОткрытии(). Там есть кусок типа

    Если ЭтоНовый() Тогда

        ...
        
        // Заполнить реквизиты значениями по умолчанию.            
        ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ЭтотОбъект, "Покупка",ПараметрОбъектКопирования);

        ...
            
    КонецЕсли;


Если у Пользователя стоит в настройках заполнения документов "отражать в бух учете", у тебя флаг установится после этого заполнения. Надо тогда после ЗаполнениеДокументов.ЗаполнитьШапкуДокумента() вставить что-то типа

    Если ЗначениеЗаполнено(ПараметрОснование) Тогда

        ОтражатьВБухгалтерскомУчете = Основание.ОтражатьВБухгалтерскомУчете;
        ЭлементыФормы.ОтражатьВБухгалтерскомУчете.Доступность = ОтражатьВБухгалтерскомУчете;
            
    КонецЕсли;


SemenYU Подменю пользователя
сообщение 22.04.20, 18:00
Сообщение #6

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Всем большое пасибо! Получилось!

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 25.04.24, 10:07
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!