fixin (fixin) wrote,
fixin
fixin

1С: Поле "Орыгинал"

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

Использую новомодную схему запросов. Код, конечно, не идеальный, но рабочий, костыльный.


        ИмяДинамическогоСписка = Эл.ПутьКДанным;
       
ДС = Форма[ИмяДинамическогоСписка];

       
//http://infostart.ru/public/307045/ - по схеме запроса тут...
       
СхемаЗапроса = Новый СхемаЗапроса();
       
СхемаЗапроса.УстановитьТекстЗапроса(ДС.ТекстЗапроса);

       
ЗапросВыбораИзИБ = СхемаЗапроса.ПакетЗапросов[0];
       
ОператорВыбораДанных = ЗапросВыбораИзИБ.Операторы[0];

       
ПсевдонимОсновнойТаблицы = ОператорВыбораДанных.Источники[0].Источник.Псевдоним;

       
ДопИсточник = ОператорВыбораДанных.Источники.Добавить("РегистрСведений._ПолученОригинал","_ПолученОригинал");
       
ДопИсточник.Соединения.Добавить(ПсевдонимОсновнойТаблицы, "_ПолученОригинал.Документ = " + ПсевдонимОсновнойТаблицы + ".Ссылка");
       
ДопИсточник.Соединения[0].ТипСоединения = ТипСоединенияСхемыЗапроса.ПравоеВнешнее;

       
ОператорВыбораДанных.ВыбираемыеПоля.Добавить("_ПолученОригинал.ПолученОригинал");
       
ЗапросВыбораИзИБ.Колонки[ЗапросВыбораИзИБ.Колонки.Количество() - 1].Псевдоним = "_ПолученОригинал";


       
//ВыбираемыеПоля

       
ДС.ТекстЗапроса = СхемаЗапроса.ПолучитьТекстЗапроса();


       
Элемент = Форма.Элементы.Добавить("_ПолученОригинал", Тип("ПолеФормы"), Эл);
       
Элемент.Вид = ВидПоляФормы.ПолеФлажка;
       
Элемент.ПутьКДанным = Эл.ПутьКДанным + "._ПолученОригинал";

Список документов в форме можно найти примерно таким кодом:


    Эл = Неопределено;
   
ИскСписокДокументов = Неопределено;
    Для Каждого
Эл Из ЭтаФорма.Элементы Цикл
        Если
Найти(Эл.Имя, "СписокДокументы") = 1 Тогда
           
ИскСписокДокументов = Эл;
            Прервать;
        КонецЕсли;
    КонецЦикла;

Да, тупо по наименованию, но в типовых, слава богу, всё однообразно именуется.

Tags:
Subscribe

Posts from This Journal “1С” Tag

  • Visual Basic + 1С всё?

    Вот и верь после этого Одину Эссу!? Как-то, еще на работе в Максимусе, мне понадобилось написать внешнюю компоненту для управления сканером…

  • Вы всё еще кастрируете?

    Для отладки бизнес-процессов согласования договоров прежде, чем дело дойдет до утверждения, нужно пройти длинную цепочку согласований. Чтобы не…

  • Коварный ввод на основании в УФ

    На основании документа Х можно вводить два документа А и Б. Но конкретный вид документа зависит от содержимого документа Х (вида операции). Решили…

  • Правило назначения ролей – не запрещать!

    Есть одно правило назначения ролей пользователей, которое выработано эмпирически и скорее обосновано чутьём. Нельзя делать запреты пользователям с…

  • Гуру-тест 1С: обмануть при записи

    Итак, задачка. Нужно, чтобы при записи новая версия объекта не поместилась в базу данных, но при этом не была сгенерирована ошибка или отказ. Случай…

  • Долгострои 1С

    Если вы хотите узнать, почему программисты 1С любят платформу 1С и местами ненавидят разработчиков этой платформы, то сейчас я Вам расскажу. Уже 10…

  • Ловкость рук и обработка результата запроса

    Как то я пообещал заказчику, что обработаю определенный список документов, но забыл, что эти документы были в базе с управляемыми формами. Как быть?…

  • 1С и искусственные серверные барьеры

    Заметил, что в управляемых формах 1С принуждает программистов к плохой архитектуре решений. Вкратце упомяну, что теперь большинство внешних…

  • Особенности белорусского Налогоплательщика

    Взял подработку у одного знакомого чувака из Беларуси. Платил мало (я то беру 1500 в час, а там по 800), но знакомый хороший, грех было отказывать,…

promo fixin december 28, 2020 16:57 1406
Buy for 30 tokens
Добро пожаловать в журнал Осипова Сергея Александровича, известного также как Fixin и Гений 1С. Рекомендую ознакомиться с Часто Задаваемыми Вопросами обо мне. Что я хочу в подарок - список. Мой проект " Секс за Ваши". Если вы хотите написать пост обо мне или почитать, что пишут…
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 44 comments