Вход | Регистрация
 

Сценарии и правила обработки нарядов в Итилиум

Сценарии и правила обработки нарядов в Итилиум
Я
   NIGHTHUNTER
 
20.11.20 - 04:30
Конфигурация Итилиум, редакция 4.5 (4.5.3.6) .
По некоторым сведениям, в конфигурации, в режиме предприятия имеются инструменты, позволяющие обрабатывать кодом или прочими средствами поведение пользователей.
Например проверять заполняемость реквизитов документа Наряд. Или же, проверять правильность заполнения самого документа.

Вот тут задаются настройки этого http://joxi.ru/xAeZ8e6iXbPlJr .

Не подскажете ли как это работает? Я хочу пока проверить, просто при открытии документа Наряд вывести сообщение "Тест", все задаю как нужно но не работает.

Пробую настраивать это действие по разному, но вывести сообщение не получается . http://joxi.ru/DrlxEORHyGZ3vr
   SleepyHead
 
1 - 20.11.20 - 04:34
(0) Когда ничего не получается - откройте, наконец, инструкцию...
   NIGHTHUNTER
 
2 - 20.11.20 - 04:34
Как добиться вывода сообщения, что бы понять что настройки эти работают ?

http://joxi.ru/1A5ER9vUbz1QGA
   NIGHTHUNTER
 
3 - 20.11.20 - 04:38
бесполезно, ничего не работает ((((
   SleepyHead
 
4 - 20.11.20 - 04:39
(2) Что написано в документации к конфе "Итилиум", по этому функционалу?
   NIGHTHUNTER
 
5 - 20.11.20 - 04:40
(4) у меня ее нету, да вот он функционал, пробую делать, но никакого результата ни эффекта нет
   PR
 
6 - 20.11.20 - 04:48
(0) ИТИЛИУП?
Тогда уж ИТИЛИУПС
   victuan1
 
7 - 20.11.20 - 04:48
В этом случае мне всегда помогает анализ исходного кода конфигурации и отладчик.
   Bigbro
 
8 - 20.11.20 - 04:57
(5) пиратить нехорошо. доки у всех официальных покупателей есть.
   NIGHTHUNTER
 
9 - 20.11.20 - 05:00
(6) Я опечатался. Конфигурация Итилиум, редакция 4.5 (4.5.3.6) .
(7) Да, врятли. Это или работает или нет. Если нет, то и не нужно пробовать заниматься этим. В коде править, подписки, расширения и тд.

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

(8) Ну значит они есть. Нужно будет их поднять. Я пишу что пока что смотрю саму конфигурацию, и делаю настройки что бы увидеть результат. Но его нет ((( !
   Bigbro
 
10 - 20.11.20 - 05:07
по моей памяти там не вполне интуитивно понятная конфа, мне приходилось лазить в доки постоянно еще и в саппорт периодически обращаться.
   NIGHTHUNTER
 
11 - 20.11.20 - 05:21
(10) Да там много чего накручено. реквизит на реквизите. Но вот (0). там создаются настройки как я понимаю обрабатывающие собития документа и тд.
Хочу пока вывести просто сообщить. Ничего не работает. Я вот и не знаю что делать.
   NIGHTHUNTER
 
12 - 20.11.20 - 05:38
(8) Получил инструкцию пользователя и инструкцию администратора.
Как это сейчас мне может помочь с (0) . Буду разбираться. Но мне сказали что эти настройки 100% работают. Что тогда я не так делаю ?!
   NIGHTHUNTER
 
13 - 20.11.20 - 06:21
Если кто знает, как мне средствами описанными в (0) (2) вывести сообщение, при открытии документа, что бы понять что задаваемый код работает.

Пока все безрезультатно.
   NIGHTHUNTER
 
14 - 20.11.20 - 06:28
вроде как сработало, решил к дате не привязываться, попробовал к номеру. да ещё настройки посмотрел, сообщение вышло. Буду продолжать исследование .
   NIGHTHUNTER
 
15 - 20.11.20 - 07:02
Сейчас мне нужно при закрытии наряда, делать проверку на код закрытия и не давать закрывать документ.
Выполнять соответствующие действия.

http://joxi.ru/KAgREMdcKN6JO2

Сделал событие "Перед записью существующего документа"

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

Как тут обрабатывать закрытие документа, по кнопке Записать и закрыть, проверяя код закрытия. А то получается что если пользователь нажмет Записать и закрыть, то ничего и не обработается.
   NIGHTHUNTER
 
16 - 20.11.20 - 07:14
(15) Может сообщения закрываются вместе с документом?
Я делал предупредить, но тоже ничего не показывается.

Можно ли как то это отследить? Если работает при записать, то должно работать и при записать и закрыть. Может при закрытии формы, после ничего не показывается уже?
Я считал что форма закроется а сообщения или предупреждение выйдут .
   NIGHTHUNTER
 
17 - 20.11.20 - 07:32
Да все отрабатывает.
По Записать и закрыть, в описание занес текст, все прописалось.

http://joxi.ru/Vm6jkblCvRz5Vm
   NIGHTHUNTER
 
18 - 20.11.20 - 08:03
Вопрос такой, почему не отрабатывает вот этот код ?

Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда
Если ЭтотОбъект.ТрудозатратыФакт < 0,15 Тогда 
Сообщить("Фактические трудозатраты по наряду равны значению: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт));
Сообщить("Значение фактических трудозатратов по наряду не может быть меньше 0,15 ! 
КонецЕсли;
КонецЕсли;
   NIGHTHUNTER
 
19 - 20.11.20 - 08:14
ЭтотОбъект.ТрудозатратыФакт = 0,00 

http://joxi.ru/BA0qa4NipvVxvr

Почему условие в (18) не выполняется?
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" И ЭтотОбъект.ТрудозатратыФакт < 0,15 Тогда
   Сообщить("Фактические трудозатраты по наряду равны значению: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт));
   Сообщить("Значение фактических трудозатратов по наряду не может быть меньше 0,15 ! 
КонецЕсли;
   NIGHTHUNTER
 
20 - 20.11.20 - 08:20
почему то само вот это условие, вообще не выполняется
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" И ЭтотОбъект.ТрудозатратыФакт < 0,15 Тогда
   Сообщить("Фактические трудозатраты по наряду равны значению: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт));
   Сообщить("Значение фактических трудозатратов по наряду не может быть меньше 0,15 ! 
   ЭтотОбъект.Описание = "Занеслось при закрытии в цикле";
КонецЕсли;
ЭтотОбъект.Описание = "Занеслось при закрытии вне цикла";

такое вот выполняется

ЭтотОбъект.Описание = "Занеслось при закрытии вне цикла";

что не так в верхнем условии что оно вообще не срабатывает, не понятно .
   HawkEye
 
21 - 20.11.20 - 09:04
(20) что мешает посмотреть в отладчике?
   NIGHTHUNTER
 
22 - 20.11.20 - 09:25
(21) Все работает, тут я делаю в режиме предприятия в имеющемся конструкторе настроек.
И вопрос в том что, почему, когда я добавляю условие
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" И ЭтотОбъект.ТрудозатратыФакт < 0,15 Тогда

И, - перестает вообще работать ????
   HawkEye
 
23 - 20.11.20 - 09:47
(22) дело не в бобине...

зы. ты определись, все работает или все-таки не работает? )
   NIGHTHUNTER
 
24 - 20.11.20 - 09:48
вот это условие выполняется, то есть работает

Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда   
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
Иначе
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
КонецЕсли;

вот это уже нет, вообще, тишина. В чем может быть дело?
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда   
   Если ЭтотОбъект.ТрудозатратыФакт < 0,15 Тогда 
      ЭтотОбъект.Описание = "Выполнен, трудозатраты меньше 0,15 и равны: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
   КонецЕсли;
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
Иначе
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
КонецЕсли;
   NIGHTHUNTER
 
25 - 20.11.20 - 09:49
(23) Перестает работать, вообще выполняться видимо, когда я добавляю ещё одно если, результат перестает выводиться
   NIGHTHUNTER
 
26 - 20.11.20 - 09:52
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда   
   ЭтотОбъект.Описание = "Выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
Иначе
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
КонецЕсли;


Вот это работает, но мне нужно ещё проверку на ЭтотОбъект.ТрудозатратыФакт ставить, но при второй проверке перестает работать, как это понимать?
   HawkEye
 
27 - 20.11.20 - 09:53
(25) у тебя результат условий один и тот-же, с чего ты решил, что оно выполняется...

если не выполняется, то вариантов 2:
1. ЭтотОбъект.КодЗакрытия.Наименование <> "Выполнен"
или
2. ЭтотОбъект.ТрудозатратыФакт >= 0,15
   HawkEye
 
28 - 20.11.20 - 09:54
(26) ЭтотОбъект.ТрудозатратыФакт >= 0,15
   NIGHTHUNTER
 
29 - 20.11.20 - 09:58
(28) Хотите сказать вот это будет работать ?
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда   
   Если ЭтотОбъект.ТрудозатратыФакт <= 0,15 Тогда 
      ЭтотОбъект.Описание = "Выполнен, трудозатраты меньше 0,15 и равны: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
   КонецЕсли;
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
Иначе
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
КонецЕсли;



(28) Мне нужно меньше <
   HawkEye
 
30 - 20.11.20 - 10:02
(29) хочу сказать, что надо запустить отладчик и посмотреть почему не заходит в условие...
 
 Рекламное место пустует
   NIGHTHUNTER
 
31 - 20.11.20 - 10:02
Вот это не работает. В описании ничего не появляется.
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда
   Если ЭтотОбъект.ТрудозатратыФакт <= 0,15 Тогда
      ЭтотОбъект.Описание = "Выполнен, трудозатраты меньше 0,15 и равны: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
   КонецЕсли;
   ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт); 
Иначе
    ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт); 
КонецЕсли;

В то время как (26) работает, я и не пойму в чем дело то?
   NIGHTHUNTER
 
32 - 20.11.20 - 10:03
(30) Я же объясняю. Что это конструктор в режиме предприятия. Может он какой глючный!
Со вторым условием если отказывается работать, с одним условием если работает.
   NIGHTHUNTER
 
33 - 20.11.20 - 10:06
вот так, работает! Что тогда получается? Что при втором если отказывается работать? Хоть комментарии понимает ещё
Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда
  //Если ЭтотОбъект.ТрудозатратыФакт <= 0,15 Тогда

  //   ЭтотОбъект.Описание = "Выполнен, трудозатраты меньше 0,15 и равны: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);

  //КонецЕсли;

   ЭтотОбъект.Описание = "Выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт); 
Иначе
    ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт); 
КонецЕсли;
   NIGHTHUNTER
 
34 - 20.11.20 - 10:07
Как мне запустить условие (33) без комментариев ?
   HawkEye
 
35 - 20.11.20 - 10:07
(32) ну напиши Сообшить(ЭтотОбъект.ТрудозатратыФакт)
   NIGHTHUNTER
 
36 - 20.11.20 - 10:07
(35) я делал так
Сообщить(ТипЗнч(ЭтотОбъект.ТрудозатратыФакт));
   NIGHTHUNTER
 
37 - 20.11.20 - 10:08
написало ЧИСЛО, там было 0,00 
то есть получается все в порядке, почему тогда не работает ?
   NIGHTHUNTER
 
38 - 20.11.20 - 10:09
(35) вот же по условию (33) в Описание выходит
Выполнен, трудозатраты: 0

все то есть нормально, но почему (33) без комментариев не работает?
   NIGHTHUNTER
 
39 - 20.11.20 - 10:12
Сейчас заработало с таким условием

Если ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" Тогда
   Если ЭтотОбъект.ТрудозатратыФакт <= 0 Тогда
      ЭтотОбъект.Описание = "Выполнен, трудозатраты меньше 0,15 и равны: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт);
   КонецЕсли;
   ЭтотОбъект.Описание = "Выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт); 
Иначе
    ЭтотОбъект.Описание = "Не выполнен, трудозатраты: " + СТРОКА(ЭтотОбъект.ТрудозатратыФакт); 
КонецЕсли;


То есть получается не нравилось 0,15
а как на это проверять тогда ???
   NIGHTHUNTER
 
40 - 20.11.20 - 10:14
сюда не заходит 

Если ЭтотОбъект.ТрудозатратыФакт <= 0 Тогда

то есть сравнение с трудозатратами не срабатывает, почему ?
   Lexey_
 
41 - 20.11.20 - 10:52
(40) потому, что числа надо правильно писать
   NIGHTHUNTER
 
42 - 20.11.20 - 10:55
(41) А что там например не правильного?
   Lexey_
 
43 - 20.11.20 - 10:58
(42) например, синтаксис, почитай в СП как пишутся числа или в своем коде посмотри
   VladZ
 
44 - 20.11.20 - 11:01
(0) Обращаться к разработчикам не пробовал?
   NIGHTHUNTER
 
45 - 20.11.20 - 11:26
(44) не пробовал, сейчас любое обращение нужно оплачивать наверное, куда либо то не было, по вопросам такого характера
   NIGHTHUNTER
 
46 - 20.11.20 - 11:28
(43) Мне нужно сравнивать значение ноль пятнадцать.
Пишется , либо так 0,15 либо та 0.15 . Какие ещё варианты? Если сравниваю с нулем, то пишу как 0. Как ещё?

Это можно попробовать и понять.

Дроблю проверки и выполняю их последовательно.
   NIGHTHUNTER
 
47 - 20.11.20 - 11:32
Так вот, правильно. Продолжаю тестирование.
Если ЭтотОбъект.ТрудозатратыФакт = 0.15 Тогда
   Сообщить(1);
Иначе
   Сообщить(2);
КонецЕсли;
   NIGHTHUNTER
 
48 - 20.11.20 - 11:32
То есть, не 0,15 А 0.15 .

(43) Благодарю, за поправку. Сейчас двойные буду условия проверять.
   NIGHTHUNTER
 
49 - 20.11.20 - 11:53
Сейчас смотрю, как не дать провести документ, -

Если ЭтотОбъект.Состояние.Наименование = "Завершен" И ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" И ЭтотОбъект.ТрудозатратыФакт < 0.15 Тогда
   Сообщить("У завершенного и выполненного наряда, трудозатраты не могут быть меньше значения 0.15 !");
   Отказ = Истина;
   Возврат;
КонецЕсли;
   NIGHTHUNTER
 
50 - 20.11.20 - 11:55
Вижу что вот это уже не срабатывает (49) , буду разбираться сейчас почему !
   NIGHTHUNTER
 
51 - 20.11.20 - 12:23
У меня сработало вот это условие ! Код написал на стороне предприятия, и выполняется там же.
Подскажите как сейчас сделать что бы документ не проводился, и форма документа не закрывалась ???


Если ЭтотОбъект.Состояние.Наименование = "Завершен" И ЭтотОбъект.КодЗакрытия.Наименование = "Выполнен" И ЭтотОбъект.ТрудозатратыФакт < 0.15 Тогда
   Сообщить("Состояние: "              + ЭтотОбъект.Состояние.Наименование);
   Сообщить("Код закрытия: "           + ЭтотОбъект.КодЗакрытия.Наименование);
   Сообщить("Трудозатраты факт: "      + ЭтотОбъект.ТрудозатратыФакт);
КонецЕсли;


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.