• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Глупые вопросы начинающего

  • Автор темы inock
  • Дата начала
I

inock

Кризис заставляет повышать квалификацию. Сейчас действительно везде требуется знание 1С. Накачал книжек, осваиваю с азов. Можно я тут поспрашиваю, если будет что-то не получаться?

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

Код:
Процедура ОбработкаПроведения()
//Здесь следует написать алгоритм проведения документа
КонецПроцедуры

Процедура ЗапросКоличестваВПодборе(Выб) //интерактивно выставляем количество
Если Выб.ПометкаУдаления()=1 Тогда //товар помечен на удаление
Предупреждение("Нельзя выбирать помеченные на удаление товары!");
Возврат; //прекращаем работу процедуры
КонецЕсли;
Кол=1; //Обьявили переменную для ввода количества и присвоили ей значение "1"
Если ВвестиЧисло(Кол,"Введите количество",10,2)=1 Тогда
НоваяСтрока(); //добавляем строку в табличную часть
Товар=Выб; //Товар из Выб в добавленную строку
Количество=Кол;//Количество - туда же
КонецЕсли;
КонецПроцедуры

Процедура УстанЦеныПрих()
Цена=Товар.Себестоимость.Получить(ДатаДок); //Себестоимость товара из спр. Номенклатура - в документ
СтавкаНДС=Товар.СтавкаНДС.Получить(ДатаДок);//Ставку НДС из спр. Номенклатура - в документ
КонецПроцедуры

Процедура Выч_суммы_накл()
Сумма=Цена * Количество;
НДС=Сумма/(СтавкаНДС+100)*СтавкаНДС;
КонецПроцедуры

Процедура ОбработкаПодбора(Выб) 
ЗапросКоличестваВПодборе(Выб);
УстанЦеныПрих(); //вызов процедур обработки подбора
Выч суммы_накл();
АктивизироватьСтроку();
КонецПроцедуры

Процедура Подбор()
ОткрытьПодбор("Номенклатура","ФормаСписка");
КонецПроцедуры

В форме в свойствах кнопки прописал так:
link removed

Но при нажатии на кнопку "Добавить" почему-то вылетает ошибка:

link removed

Что я делаю не так?
 
K

KiR

попробуй ее в самое начало модуля перекинуть и проверь синтаксис...
 
I

inock

попробуй ее в самое начало модуля перекинуть и проверь синтаксис...

Попробовал толку никакого...
Или у меня уже голова пухнет, и я чего-то не замечаю?

Может кто посмотрит свежим взглядом, я архивчик приаттачил?
 

Вложения

  • test.zip
    14 КБ · Просмотры: 117
K

KiR

попробуй процедуру обозвать по другому - ПодборЗначений или там Автозаполнение или просто Заполнить
 
I

inock

попробуй процедуру обозвать по другому - ПодборЗначений или там Автозаполнение или просто Заполнить

Фигня какая-то...
Код:
ЗаполнениеПодбором<<?>>()
Процедура не обнаружена (ЗаполнениеПодбором)
 
V

vbs

Или у меня уже голова пухнет, и я чего-то не замечаю?

Может кто посмотрит свежим взглядом, я архивчик приаттачил?

Весь твой код надо положить в модуль формы, а не в модуль документа - вот и вся проблема

А в модуле документа оставить только
Процедура ОбработкаПроведения()
//Здесь следует написать алгоритм проведения документа
КонецПроцедуры

И в дальнейшем туда прописать проведение
 
K

KiR

vbs, блин, точно! невнимательно прочитал фразу первого поста "модуль документа", а тут-то и крылась вся разгадка...
 
V

vbs

vbs, блин, точно! невнимательно прочитал фразу первого поста "модуль документа", а тут-то и крылась вся разгадка...
Это не беда. Новички-то, видимо, плохо различают "модуль формы" и "модуль документа".
Я вот тоже не обращал внимания, пока базу не глянул
 
I

inock

Весь твой код надо положить в модуль формы, а не в модуль документа - вот и вся проблема


Ты гляди. Действительно заработало! Спасибо :)) Типичная ошибка тех, кто первый раз видит среду разработки...
Кстати о средах, никто не в курсе, как сделать, чтобы можно было копировать текст из редактора 1C в другое приложение через буфер обмена и он получался нормальным, а не таким:

Код:
Ïðîöåäóðà ÓñòàíÖåíûÏðèõ()
Öåíà=Òîâàð.Ñåáåñòîèìîñòü.Ïîëó÷èòü(ÄàòàÄîê); //Ñåáåñòîèìîñòü òîâàðà èç ñïð. Íîìåíêëàòóðà — â äîêóìåíò
ÑòàâêàÍÄÑ=Òîâàð.ÑòàâêàÍÄÑ.Ïîëó÷èòü(ÄàòàÄîê);//Ñòàâêó ÍÄÑ èç ñïð. Íîìåíêëàòóðà — â äîêóìåíò
ÊîíåöÏðîöåäóðû

И среды VB, кстати, тоже касается...
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!