Имя: Пароль:
1C
1C 7.7
v7: 1с++ как выбрать документы по датедок?
,
0 DES
 
23.08.18
11:42
SELECT $Перерасчет.ЛицевойСчет [ЛицевойСчет $Справочник.ЛицевыеСчета]
FROM $Документ.Перерасчет AS Перерасчет
WHERE (?????)
1 Z1
 
23.08.18
11:48
надо делать inner join c таблицей _1sjourn

как то так
select * from $Документ.Накладная Док
inner join _1sjourn Жур on Док.iddoc = Жур.iddoc
2 DES
 
23.08.18
12:07
SELECT Журнал.IDDOC [Документ $Документ]
FROM $Документ.Перерасчет AS Перерасчет
    INNER JOIN _1SJOURN AS Журнал ON Перерасчет.IDDOC = Журнал.IDDOC
Сделал, но не найду датыдок в журнале
3 Sserj
 
23.08.18
12:12
метаДата = СоздатьОбъект("MetaDataWork");

"..

WHERE
  Жур.DATETIMEIDDOC between '"+МетаДата.ПолучитьСтрИзДаты(начДата)+"' and '"+метаДата.ПолучитьСтрИзДаты(конДата+1)+"'
..."
4 Вафель
 
23.08.18
12:13
(3) как параметры можно передавать
5 Вафель
 
23.08.18
12:14
с модификаторами типа
:дата~
6 Sserj
 
23.08.18
12:15
(4) Неа. DateTimeIDDOC это varchar а параметр установится как DateTime.
7 Z1
 
23.08.18
12:19
(4) Я бы сказал не можно а нужно
+ к 1 обязательно пославить условие на поле Жур.iddocdef - более подходящий индекс будет использовать sql

(0) и в интернете найди статью "v7.7 мой первый sql запрос"
8 Sserj
 
23.08.18
12:21
И еще хорошо бы в условия добавить

WHERE
  Жур.DATETIMEIDDOC between '"+МетаДата.ПолучитьСтрИзДаты(начДата)+"' and '"+метаДата.ПолучитьСтрИзДаты(конДата+1)+"'
  and Жур.IDDOCDEF = $ВидДокумента.Накладная
...

Так и пытаться соединять будет меньше строк и вероятность совпадения идшников разных видов документов исключается.
9 Вафель
 
23.08.18
12:23
10 Вафель
 
23.08.18
12:24
(8) в 7 у разных доков не могут быть разные идшники
11 ADirks
 
23.08.18
13:14
(10) Условие по IDDOCDEF нужно планировщику запросов, для правильного определения подходящего индекса.
AdBlock убивает бесплатный контент. 1Сергей