Имя: Пароль:
1C
1C 7.7
v7: SQL и DBF базы
,
0 Врединка
 
01.03.12
01:34
Такая проблема.
Есть простенькая обработка, которая проверяет периодический реквизит в справочнике, и на основании его значения делает расчет.
Вся закавырка в том, что на ДБФ-базах она работает безукоризненно, а вот на SQL - почему-то не срабатывает проверка значения реквизита.

Подскажите, где копать? В чем может быть глюк?
1 Drac0
 
01.03.12
02:15
Запрос.ВключитьSQL(0)

перед запросом
2 Врединка
 
01.03.12
02:32
(1) А если в обработке нет объекта Запрос в принципе?
3 Злопчинский
 
01.03.12
02:48
(0) не знаю, вроде на скуле нормально все было..
кусок кода показывай содержательный
4 Drac0
 
01.03.12
10:02
(2) У меня просто галлюцинации связанные с ночной работой :) Увидел в тексте слово запрос ...
Тогда да, без кода не обойтись. Либо смотреть отладчиком, что происходит.
5 ДенисЧ
 
01.03.12
10:04
тут нужно как минимум два момента.
1. поставить в личку фото топлесс.
2. показать код.
6 Врединка
 
01.03.12
13:43
л_Сотр = п_ТаблицаСотрудник.ПолучитьЗначение(п_ТаблицаСотрудник.НомерСтроки, "Сотрудник");
   
   л_Иностранец = л_Сотр.Гражданство;
   Если л_Иностранец=2 Тогда
       Если п_Фонд = "ПФСтр" Тогда
           л_БазаСотрудник    = п_ТаблицаСотрудник.ТаблицаМесяц.Итог("База"+п_Фонд);
       Иначе
           л_БазаСотрудник    = 0;
       КонецЕсли;
   КонецЕсли;

Вот кусок текста, который не отрабатывает корректно.
7 Рэйв
 
01.03.12
13:48
(6)Периодический л_Сотр.Гражданство ?
8 Попытка1С
 
01.03.12
13:48
(6) И что тут именно не отрабатывает в SQL версии...
9 Попытка1С
 
01.03.12
13:48
+8 При этом отрабатывает в DBF
10 1Сергей
 
01.03.12
13:58
(6) что тут периодического?
11 Рэйв
 
01.03.12
14:00
(10) Подозреваю   .ИспользоватьДату()  выше:-)  
Но сомневаюсь..
12 Врединка
 
01.03.12
14:02
Пардон. Ошиблась. Реквизит не периодический. С другим попутала =)
13 Врединка
 
01.03.12
14:03
(8) Не обнуляется база. Он условие л_Иностранец=2 не отрабатывает.
14 Рэйв
 
01.03.12
14:06
(13) значит оно <>2
15 Попытка1С
 
01.03.12
14:06
(13) Я не верню что условие л_Иностранец=2 отрабатывает в дбф и не отрабатывает в скуле честно говоря, может просто тут типы не совпадают.
16 Врединка
 
01.03.12
14:20
(15) Я сама в замешательстве. Конфа-то одна и та же.
17 viktor_vv
 
01.03.12
14:26
Ну вставь и смотри че покажет

   л_Иностранец = л_Сотр.Гражданство;
   Сообщить(л_Иностранец);
   Если л_Иностранец=2 Тогда
18 viktor_vv
 
01.03.12
14:27
Можно еще так

Сообщить(""+л_Сотр+ "  = " +л_Иностранец);
19 1Сергей
 
01.03.12
14:28
а ещё лучше открыть Отладчик
20 viktor_vv
 
01.03.12
14:30
(19) Даже нечего возразить :).
Ошибка? Это не ошибка, это системная функция.