Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
08 мая 2024, 20:03

Прошу помощи. Радченко,9 занятие.

Автор ula, 08 ноя 2015, 12:19

0 Пользователей и 1 гость просматривают эту тему.

ula

Надеюсь, что пишу по адресу. Если нет, по адресу - посылайте :)

До 9 занятия дошла легко, листинг 9.1
Функция РозничнаяЦена(АктуальнаяДата, ЭлементНоменклатуры) Экспорт
   // Создать вспомогательный объект "Отбор".
   Отбор = Новый Структура("Номенклатура", ЭлементНоменклатуры);

   // Получить актуальные значения ресурсов регистра.
   ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);
   Возврат ЗначенияРесурсов.Цена;
КонецФункции
это общий модуль, закрылся без ошибок, галочки в его свойствах менять пробовала.
Но листинг 9.2
&НаКлиенте
Процедура ПереченьНоменклатурыНоменклатураПриИзменении(Элемент)
   // Получить текущую строку табличной части.
   СтрокаТабличнойЧасти = Элементы.ПереченьНоменклатуры.ТекущиеДанные;

   // Установить цену.
   СтрокаТабличнойЧасти.Цена = РаботаСоСправочниками.РозничнаяЦена(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура);

   // Пересчитать сумму строки
   РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
при закрытии выдает ошибку
Ошибка инициализации модуля: Документ.ОказаниеУслуги.Форма.ФормаДокумента.Форма
по причине:
{Документ.ОказаниеУслуги.Форма.ФормаДокумента.Форма(20,28)}: Переменная не определена (РаботаСоСправочниками)
   СтрокаТабличнойЧасти.Цена=<<?>>РаботаСоСправочниками.РозничнаяЦена(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура);
В отладчике при попытке открыть документ "оказание услуги" пишет
{Документ.ОказаниеУслуги.Форма.ФормаДокумента.Форма(20,28)}: Переменная не определена (РаботаСоСправочниками)
и, самое интересное - прилагаемая к учебнику демонстрационная конфигурация (на 13 урок), когда я пытаюсь в ней получить искомое (изменение цены автоматически после изменения даты) ничего не меняет. Какую дату ни подставь - все равно "7".
Можете подсказать, что я делаю не так?

ula

Да, и еще - при попытке "повторить выбор транзистора в колонке Номенклатура" (впрочем, не только транзистора) не только не устанавливается нужное значение цены, но и выдает ошибку "
{ОбщийМодуль.РаботаСоСправочниками.Модуль(6,21)}: Переменная не определена (РегистрыСведений)   "

Дмитрий@

У модуля "РаботаСоСправочниками", какие галочки стоят Клиент, Сервер, ВызовСервера.
Добавлено: 08 ноя 2015, 15:50


У функции РозничнаяЦена(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура), директива компиляции какая, если есть.

ula

У функции РозничнаяЦена нет директивы компиляции. А нужна?

Галочки в свойствах модуля "РаботаСоСправочниками":
сначала стояла только в "клиент(управляемое приложение",
потом мне на другом форуме посоветовали поставить еще в "сервер" и "вызов сервера". Поставила.
И еще исправила свою "РаботаСоСтравочниками на "РаботаСоСправочниками" :)
Теперь "оказание услуг" открывается, но "выбрать еще раз" транзистр не дает - пишет "
Общий Модуль. Работа Со Справочниками.Модуль (3,19) Переменная не определена ( Регистры Сведений) "
Кстати, когда пытаюсь "выбрать еще раз" транзистр в скаченной с диска к учебнику базе, выдает "
Общий Модуль. Работа Со Справочниками.Модуль (6,21) Переменная не определена ( Регистры Сведений) "
Вот...
Если не работает то, что ну точно должно работать - о чем это может говорить? Может в 1С есть какие-то ... ну, не знаю - глобальные настройки, или что-то в этом духе, в которых у меня... ну, допустим, галочки как-то не так стоят???

Дмитрий@

Меня смущает, что он пишет ошибку регистры сведений через пробел.
Добавлено: 08 ноя 2015, 19:45


и над функцией, где регистры сведений не определена, поставьте директиву компиляции "&НаСервере"

Psm_2015

Цитата: ula от 08 ноя 2015, 18:02
У функции РозничнаяЦена нет директивы компиляции. А нужна?

Галочки в свойствах модуля "РаботаСоСправочниками":
сначала стояла только в "клиент(управляемое приложение",
потом мне на другом форуме посоветовали поставить еще в "сервер" и "вызов сервера". Поставила.
Давно делал, но архив сохранил. У меня галочки этого модуля стоят только "сервер" и "вызов сервера".

cska-fanat-kz

Цитата: Дмитрий@ от 08 ноя 2015, 19:42и над функцией, где регистры сведений не определена, поставьте директиву компиляции "&НаСервере"

могу ошибаться, но в общих модулях нет директив компиляции.
клиент-серверный контекст определяется настройками самого общего модуля.

Цитата: ula от 08 ноя 2015, 18:02Теперь "оказание услуг" открывается, но "выбрать еще раз" транзистр не дает - пишет "
Общий Модуль. Работа Со Справочниками.Модуль (3,19) Переменная не определена ( Регистры Сведений) "
Кстати, когда пытаюсь "выбрать еще раз" транзистр в скаченной с диска к учебнику базе, выдает "
Общий Модуль. Работа Со Справочниками.Модуль (6,21) Переменная не определена ( Регистры Сведений) "
Вот...

Если ругается на "РегистрыСведений", то скорее всего надо снять у общего модуля флаг "Клиент" и оставить только "Сервер" и "Вызов сервера".
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

ula

Уррааа!
Оно поменялось!   Теперь Ошибку не выдает. Правда, и не подставляет актуальную цену, но в этом, надеюсь, уже разберусь.
И, главное - именно так расставить галочки написано в учебнике. И я так и расставила. Но ошиблась (справочники-стравочники) и ударилась в самодеятельность...
Большое спасибо всем вам!
Добавлено: 09 ноя 2015, 12:54


... и в базе за 13 урок (скачанной с диска) тоже самое - при именно так поставленных галочках и директиве компиляции ошибки не выдает, но и не считает... Не, ну так не честно!  :(  Я ж там кроме тех галочек в свойствах общего модуля ничего своим ручками кривыми и не трогала.  Разве она не должна - работать?

cska-fanat-kz

отлаживать надо, что вам еще сказать...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

ula

аккуратно скопировала все что можно с 20 урока в 9-й, и - все заработало!
вывод - что-то все-таки "затрогала" шаловливыми ручками в 13-м уроке...

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск