Имя: Пароль:
1C
1С v8
Не учитывать запись в запросе
0 Beduin
 
02.10.12
18:55
Как лучше реализовать алгоритм, чтобы конкретная запись регистра сведений в запросе не участвовала. Условие по всем полям устанавливать неохота.
1 Wobland
 
02.10.12
18:55
тогда назови критерий конкретности
2 Wobland
 
02.10.12
18:56
а вообще, идея какая-то нехорошая
3 Beduin
 
02.10.12
18:56
(1) Нету его. Глупая тема. У меня сегодня день оптимальности.
4 shuhard
 
02.10.12
18:57
(0)1C or other programming
а чё, на андроиде так можно ?
5 Beduin
 
02.10.12
18:58
(2) Почему?
Задачка простая. У регистра сведений есть период. ДатаС и ДатаПо
Нужно чтобы при редактировании новая строчка не попадала в этот период.
6 Wobland
 
02.10.12
18:59
(5) что нужно?
7 Beduin
 
02.10.12
18:59
(6) Получаю начальную и конечную дату.
ВЫБРАТЬ
   МИНИМУМ(АрендаИЛизинг.ДатаС) КАК ДатаС,
   NULL КАК ДатаПо
ИЗ
   РегистрСведений.АрендаИЛизинг КАК АрендаИЛизинг
ГДЕ
   АрендаИЛизинг.ТС = &ТС
   И АрендаИЛизинг.Арендодатель <> &Арендодатель
   И АрендаИЛизинг.Договор <> &Договор
   И АрендаИЛизинг.ТипДоговора <> &ТипДоговора
   И АрендаИЛизинг.ДатаС <> &ДатаС
   И АрендаИЛизинг.ДатаПо <> &ДатаПо
   И АрендаИЛизинг.СуммаАренды <> &СуммаАренды
   И АрендаИЛизинг.Примечание <> &Примечание

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
   NULL,
   МАКСИМУМ(АрендаИЛизинг.ДатаПо)
ИЗ
   РегистрСведений.АрендаИЛизинг КАК АрендаИЛизинг
ГДЕ
   АрендаИЛизинг.ТС = &ТС
   И АрендаИЛизинг.Арендодатель <> &Арендодатель
   И АрендаИЛизинг.Договор <> &Договор
   И АрендаИЛизинг.ТипДоговора <> &ТипДоговора
   И АрендаИЛизинг.ДатаС <> &ДатаС
   И АрендаИЛизинг.ДатаПо <> &ДатаПо
   И АрендаИЛизинг.СуммаАренды <> &СуммаАренды
   И АрендаИЛизинг.Примечание <> &Примечание
8 Beduin
 
02.10.12
19:00
(6) В общем в запрос попадает запись которую я редактирую.
9 Wobland
 
02.10.12
19:01
(7) зачем два запроса? как оно связано с (5)?
10 Beduin
 
02.10.12
19:04
(9) Получаю весь возможный период для анализа.
11 Нуф-Нуф
 
02.10.12
19:04
накладывай блокировку на запись
12 Beduin
 
02.10.12
19:06
(11) Хм. Непонял.
13 Wobland
 
02.10.12
19:06
выбрать первые 2 и сравнить с "текущей"?
14 Beduin
 
02.10.12
19:10
(13) Тоже не понял.
15 Wobland
 
02.10.12
19:12
(14) выбрать первые 2 датас упорядочить по датас убыв
...
НужныйМаксимум=?(ТвояДата>Запрос[0], Запрос[0], Запрос[1])
16 Wobland
 
02.10.12
19:16
(15) НужныйМаксимум=?(ТвояДата=Запрос[0], Запрос[1], Запрос[0])
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший