Быстрый поиск подчиненного документа, с помощью прямого запроса

26.05.11

Разработка - Запросы

При ситуации, когда необходимо проверить, есть ли у документа подчиненный документ, конкретного вида или нет, если есть, вывести на экран, в этой ситуации будет полезна следующая функция глобального модуля. Работает только в SQL версии и при установленной внешней компоненте 1С++ !

 

 

 

//глобальные переменные

Перем RS Экспорт ;
Перем RSподч Экспорт ;
Перем RSДвиж Экспорт ;
Перем МетаДата Экспорт ; 

// 2 - только проведенные
// 1 - брать удаленные
Функция глНайтиПодчиненныйДокумент(Конт, ВидДок, УдПров=1) Экспорт
 Если ПустоеЗначение(RSподч)=1 Тогда
  RSподч   = СоздатьОбъект("ODBCRECORDSET") ;
  ТекстЗапроса  =  "
  |SELECT TOP 1
  | Жур.IDDOC as ИдДок
  |FROM _1SCRDOC as Отбор (NOLOCK)
  |INNER JOIN _1SJOURN as Жур (NOLOCK) ON Отбор.ChildID = Жур.IDDOC
  |WHERE (Отбор.ParentVal=?)  AND (Жур.IDDOCDEF=?) AND (Отбор.MDID=0) AND (Жур.Closed&1>=?) AND (Жур.ISMARK<=?)
  |" ;   
  RSподч.Подготовить(ТекстЗапроса) ;
  RSподч.ДобПараметр(1,14,23,0) ;
  RSподч.ДобПараметр(1,3,4,0) ;
  RSподч.ДобПараметр(1,2,1,0) ;
  RSподч.ДобПараметр(1,2,1,0) ;
 КонецЕсли;
 
 RSподч.УстПараметр(1, МетаДата.ЗначениеВСамуюДлиннуюСтрокуБД(Конт.ТекущийДокумент()), 1) ; 
 RSподч.УстПараметр(2, МетаДата.ИДДокумента(ВидДок)) ;
 RSподч.УстПараметр(3, ?(УдПров=2,1,0)) ;
 RSподч.УстПараметр(4, ?(УдПров=1,1,0)) ;
 ИдДок = RSподч.ВыполнитьСкалярный() ;   
 Возврат МетаДата.ЗначениеИзСтрокиБД("Документ."+ВидДок,ИдДок) ;

 

См. также

Инструментарий разработчика Запросы Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Обработка, позволяющая выполнять запросы к базе, лежащей в MySQL, для 1С:Предприятие 7.7.

10.08.2022    3203    4    crocolo    0    

3

Запросы Программист Платформа 1С v7.7 Платформа 1С v8.3 Бесплатно (free)

Очень часто нужно при работе с HTTP сервисами или сайтами использовать Асинхронные HTTP запросы, отправку на сервер нескольких файлов, использование сжатия трафика. Эта статья про то, как этого легко добиться.

09.03.2016    39307    Serginio    22    

44

Универсальные функции Запросы Программист Платформа 1С v7.7 Платформа 1С v8.3 Бесплатно (free)

На эту тему уже есть статьи, но этот способ нигде не описан. Хотя я его использую с тех пор, как занимаюсь программированием. Его преимущество в простоте и универсальности: можно применять на 1С, SQL, а также в любом другом языке программирования.

05.07.2015    22487    json    3    

22

Запросы Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Пример получения остатков по складу по запросу по почте из программы 1С 7.7. Для получения остатков необходимо пользователю с любого почтовика (с любого "мыла") отправить текст сообщения GiveMyStockBalance_ForAnalize на почтовый адрес определенный в Константа.СерверПолучения. Программа выдаст остатки (можно переписать функцию для выдачи любых данных) в формате xls на почту указанную в константе Константа.СерверОтправки. Программа может быть полезна в тех организациях где трудно или невозможно осуществить прямой доступ к 1С сотрудников для просмотра необходимых данных. Также можно организовать некий почтамт - запрос для клиентов - при посылке определенного логина клиентом на его почту будет автоматически выслана информация, например, акт сверки с клиентов, или процент выполнения его заказа и т.д.

3 стартмани

25.03.2014    25635    5    protexprotex    3    

5

Зарплата Запросы Программист Расчет 7.7 1С:Зарплата и кадры 7.7 Абонемент ($m)

Обзор методов реализации условий и функций с условиями в обращениях к журналу расчетов при помощи прямого запроса.

1 стартмани

06.12.2012    14450    nicotin    5    

9

Запросы Программист Платформа 1С v7.7 1C77 Россия Абонемент ($m)

Собственно, надоело одно и тоже делать для каждого отчета.

1 стартмани

24.04.2012    15132    22    newbas    3    

5

Запросы Платформа 1С v7.7 Оперативный учет 7.7 Бухгалтерский учет 7.7 Расчет 7.7 1C77 Абонемент ($m)

Универсальный отчет для конфигураций на платформе 1С 7.7. Умеет обращатся к справочникам, документам, регистрам и журналам расчетов. Удобен для быстрого получения каких либо данных, которые можно получить посредствам запроса. Предусмотренна возможность сохранения настроек.

1 стартмани

14.04.2012    34556    309    set2333    16    

11
Оставьте свое сообщение