Заказать обратный звонок:



Урок №3

В этой теме 14 ответов, 6 участников, последнее обновление  wano55rus 1 день, 10 час. назад.

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)
  • Автор
    Сообщения
  • #3647

    ushac
    Участник

    Здравствуйте. При попытке повторения за преподавателем создания обработки «Работа с операторами» выяснилось, что если в коде записать просто ВводимоеЧисло (как это у преподавателя), то выдается ошибка «Переменная не определена». И только при написании Объект.ВводимоеЧисло программа начинает работать корректно. Однако, при достижении варианта «На сервере без контекста» ни один вариант не проходит. Хотелось бы разобраться.
    С уважением Ушаков А. А.

    #3656

    sv112
    Участник

    Объект.ВводимоеЧисло- тут ключевое слово Объект, его необходимо всегда вводить при вводе переменной, иначе программа не понимает и выдает ошибку.

    #3658

    Anatoliy
    Хранитель

    Должно работать как в видео. Вы на сервере выполняете, как в видео уроке?
    Пришлите ссылку на выгрузку базы. Так не сможем понять что у вас происходит

    • Ответ изменён 2 нед., 3 дн. назад пользователем  Anatoliy.
    #3660

    ushac
    Участник

    Здравствуйте. По поводу предыдущего вопроса.
    Ссылка на базу, которую я скачал с вашего сайта

    А это скриншот проблемы

    И еще. Постоянно неактивна кнопка «вычислить выражение»
    С уважением Ушаков А. А.

    #3661

    ushac
    Участник

    Повторю ссылки

    Скриншот проблемы

    Ссылка на базу

    #3662

    ushac
    Участник

    Еще раз ссылка на скриншот

    Скриншот проблемы

    #3663

    Andrei
    Участник

    Вы добавили реквизит не у формы, а у самого объекта(обработки). Поэтому вы не можете напрямую обратиться к реквизиту ВводимоеЧисло.
    Добавьте этот реквизит у формы, скрин прилагаю
    https://yadi.sk/i/xZww9cbm3VYqzi

    Обратите внимание, у объекта плюсик закрыт(стрелкой указал), реквизит добавлен на форму.

    #3672

    ushac
    Участник

    Спасибо, теперь работает корректно. Но сохраняется прежний вопрос — как сделать активной кнопку «вычислить выражение»?

    #3682

    ushac
    Участник

    Все перепробовал (до переустановки 1с), но кнопка «вычислить выражение» все равно неактивна. Возможно ли продолжение обучения без этой … кнопки?

    #3685

    Anatoliy
    Хранитель

    Кнопка вычислить выражение будет доступна тогда, когда вы подключитесь в отладку. Поставьте точку останова в конфигураторе —> в режиме 1С Предприятие выполните и когда остановится на точке останова, то вы сможете Вычислить выражение

    #3687

    ushac
    Участник

    Спасибо. Все заработало

    #3710

    FilonovEI
    Участник

    Здравствуйте! БК20 урок №3. Не могу разобраться где причина. При изменении цены выдаёт ошибку.

    {Документ.ПоступлениеТоваровИУслуг.Форма.ФормаДокумента.Форма(23)}: Поле объекта не обнаружено (Количетсво)
    ТекущаяСтрока.Сумма = ТекущаяСтрока.Цена * ТекущаяСтрока.Количетсво;

    Код:
    &НаКлиенте
    Процедура ТоварыНоменклатураПриИзменении(Элемент)
    ТекущаяСтрока = Элементы.Товары.ТекущиеДанные;
    ТоварыНоменклатураПриИзмененииНаСервере(ТекущаяСтрока.Цена,ТекущаяСтрока.Номенклатура);
    ТекущаяСтрока.Сумма = ТекущаяСтрока.Цена * ТекущаяСтрока.Количество;
    КонецПроцедуры

    &НаСервере
    Процедура ТоварыНоменклатураПриИзмененииНаСервере(Цена,Номенклатура)
    Цена = Номенклатура.ЦенаПродажи;
    КонецПроцедуры

    &НаКлиенте
    Процедура ТоварыКоличествоПриИзменении(Элемент)
    ТекущаяСтрока = Элементы.Товары.ТекущиеДанные;
    ТекущаяСтрока.Сумма = ТекущаяСтрока.Цена * ТекущаяСтрока.Количество;
    КонецПроцедуры

    &НаКлиенте
    Процедура ТоварыЦенаПриИзменении(Элемент)
    ТекущаяСтрока = Элементы.Товары.ТекущиеДанные;
    ТекущаяСтрока.Сумма = ТекущаяСтрока.Цена * ТекущаяСтрока.Количетсво;
    КонецПроцедуры

    #3712

    Anatoliy
    Хранитель

    У вас вроде опечатка КоличеТСво

    #3714

    FilonovEI
    Участник

    Исправил! Ошибку устранил.

    #3713

    wano55rus
    Участник

    Всем доброго здравия, вопрос БК20 урN3 последнее задание — «Изменить цену для конкретного товара во всех документах установка цен номенклатуры — установить 5000. (Номенклатуру,которую будем менять выбираем на форме обработки – также как добавляли дату начала и дату окончания. Используем обход табличной части документа и вспоминаем как задавали условия –чтобы менять не все а только то, что нужно)».
    1)Вроде бы все понятно, создаю на форме обработки реквизит «ВыборНоменклатуры» тип «Строка» для того, чтобы выбирать Номенклатуру аналогично как выбирали дату.
    2) Делаю выборку, делаю обход табличной части, устанавливаю новую цену, провожу документ
    &НаСервере
    Процедура СнятьПроведениеНаСервере()
    Выборка=Документы.УстановкаЦенНоменклатуры.Выбрать(,ВыборНоменклатуры);
    Пока Выборка.Следующий()Цикл
    Объект1=Выборка.ПолучитьОбъект();
    Для Каждого ТекСтр Из Объект1.Данные Цикл
    ТекСтр.Цена=5000;
    КонецЦикла;
    Объект1.Записать(РежимЗаписиДокумента.ОтменаПроведения);
    КонецЦикла;

    КонецПроцедуры

    &НаКлиенте
    Процедура СнятьПроведение(Команда)
    СнятьПроведениеНаСервере();
    КонецПроцедуры

    3) запускаю обработку, пишу в строке которую создал например «Мука» и получаю ошибку:{Обработка.о1.Форма.Форма.Форма(4)}: Ошибка при вызове метода контекста (Выбрать)
    Выборка=Документы.УстановкаЦенНоменклатуры.Выбрать(,ВыборНоменклатуры);
    по причине:
    Несоответствие типов (параметр номер ‘2’)

    Вопрос, в чем моя ошибка?

    Базу прилагаю https://yadi.sk/d/F8blj6Yt3WJTyu

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)

Для ответа в этой теме необходимо авторизоваться.