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

1С:Предприятие ::

Метки:формы

Процедура ПриОткрытии() и функции для расчета текстов на форме.

Я
   Мак
11.05.04 - 13:17
Есть текст на форме. Значение рассчитывается функцией
Функция Нал_ВФВС()
    Перем Стр;
    ТЗ_РН.НайтиЗначение(ТМЦ,Стр,1);
    Возврат ТЗ_РН.ПолучитьЗначение(Стр,2);
    КонецЕсли;
    Сообщить(Стр);
КонецФункции
ТЗ_РН - ТаблицаЗначений, формируется в процедуре ПриОткрытии(), причем формируется корректно - текст, что на форме показывает правильное значение, но при этом в окошке сообщений ругается, что номер за пределами значений. В чем тут подвох? У меня ощущение, что данная функция рассчитывается до процедуры ПриОткрытии()
 
  Рекламное место пустует
   SnarkHunter
 
1 - 11.05.04 - 13:23
Перед НайтиЗначение вставь Стр=0;
   Мак
2 - 11.05.04 - 13:27
ПОставил. Ничего не меняет. Да я так понимаю, и не должнго менять. СТр - переменная, куда НайтиЗначение() помещает номер строки с "ТМЦ".
   Vozhd
 
3 - 11.05.04 - 13:29
(0) А кто будет проверять возвращаемое значение функции НайтиЗначение()?
   Gavrila
 
4 - 11.05.04 - 13:29
(0)"У меня ощущение, что данная функция рассчитывается до процедуры ПриОткрытии()" - у тебя абсолютно правильное ощущение, заполняй ТЗ в модуле формы... :)
   SnarkHunter
 
5 - 11.05.04 - 13:31
Логично... А если поиск неудачен функция что возвращать будет?
   427
 
6 - 11.05.04 - 13:32
(1) Очки то протри.... ТЗ_РН.... это что у него за фигня?
   Gavrila
 
7 - 11.05.04 - 13:34
(5) ага проверка нужна, согласен :)
   SnarkHunter
 
8 - 11.05.04 - 13:36
(4)Ни фига... Функция в тексте на форме... При отрабатывании ПриОткрытии формы еще нет, соответственно нет и текста, в формуле которого вычисляется функция...
   Gavrila
 
10 - 11.05.04 - 13:41
(8) абсолютно прав: сам проверил... все таки проверка :)
 
  Рекламное место пустует
   Gavrila
 
12 - 11.05.04 - 13:49
(11) пиши так:
Функция Нал_ВФВС() 
   Перем Стр;
   Стр = 0;
   Если ТЗ_РН.НайтиЗначение(ТМЦ,Стр,1) = 0 Тогда
      Возврат "";
   Иначе
      Возврат ТЗ_РН.ПолучитьЗначение(Стр,2); 
   КонецЕсли; 
   Сообщить(Стр); 
КонецФункции
   SnarkHunter
 
13 - 11.05.04 - 13:51
(11)И при этом сообщит, "что номер за пределами значений"...
   Мак
14 - 11.05.04 - 13:52
Хорошо. А все же почему одновременно я вижу и правильное значение, и сообщение об ошибке?
   Gavrila
 
15 - 11.05.04 - 13:54
(14) не прав: почти одновременно :), а дальше по отладчику :))


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