PDA

Показать полную графическую версию : Проблема: 1с 8.1 конфигуратор


Alex NORD
24-03-2010, 11:00
Добрый день, уважаемые.
Начал изучение программирования 1с и столкнулся с небольшой но неприятной проблемой в конфигураторе: когда прописываешь какую-либо процедуру аналогичную ранее прописанной, вылетает ошибка (переменная не определена). Если просто скопипастить ранее прописанную процедуру и переориентировать её на нужную строку таблицы, например, всё отлично прокатывает. С чем это связанно, и можно ли как-то эту заковыку разрешить?
Копипастить в принципе не проблема, хотя и не удобно, когда набиваешь руку и желательно больше писать эти самые процедуры, чтоб лучше запоминать, но не так давно такая же проблема возникла с написанием процедуры, которую я еще не прописывал, и скопипастить её соответственно нельзя.
Само-собой тексты процедур перепроверял десять раз и сверял с умными книжками.

Для освоения использую вполне официальную 1С Версию для обучения программирования.

Delirium
25-03-2010, 02:02
Alex NORD, приведите пример рабочей процедуры и той, которую пытаетесь прописать сами. Заодно опишите, какая переменная не определена.

Alex NORD
25-03-2010, 18:15
Да, даже самой простецкой типа автопересчета суммы в форме документа при изменении количества или цены какого либо элемента номенклатуры

Создаю и прописываю Общий модуль расчета суммы "РаботаСДокументами":
Процедура РассчитатьСумму(СтрокаТабличнойЧасти) Экспорт
СтрокаТабличнойЧасти.Сумма=СтрокаТабличнойЧасти.Количество*СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

В форме документа в колонке Количество прописываю процедуру "При изменении":
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти=ЭлементыФормы.Материалы.ТекущиеДанные;
РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры

В колонке Цена "При изменении":
Процедура МатериалыЦенаПриИзменении(Элемент)
СтрокаТабличнойЧасти=ЭлементыФормы.Материалы.ТекущиеДанные;
РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры

Если процедуру для Цены набить вручную - ругается, что переменная СтрокаТабличнойЧасти не определена, а если скопипастить процедуру для Количества и подправить (заменив Количество на Цена) всё прокатывает.
Такая вот штука.

Delirium
26-03-2010, 01:49
БББББббббббррррр, как же жутко выглядит русский бейсик :) Меня аж корежит каждый раз, когда приходится сталкиваться с этим "чудом" :)

А процедура "РассчитатьСумму" была введена руками или скопипастена? Просто у меня подозрение, что ГДЕ ТО случайно попалась английская буква в имени русской переменной "СтрокаТабличнойЧасти".

Alex NORD
26-03-2010, 07:54
Общий модуль в ручную бьется.
К сожалению дело не в лат. букве, ибо перебивал и перепроверял всё это не раз.. И на разных машинах.. И на разных осях (от ХР до 7)..
Я озадачен до глубины души.. Просто дичь какая-то..




© OSzone.net 2001-2012