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

Написание кода процедуры

Автор Doc125rus, 29 июл 2024, 15:05

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

АляАля

АляАля, Процедура РассчитатьСумму(СтрокаТабличнойЧасти) Экспорт
   СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры

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

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


   {ОбщийМодуль.РаботаСДокументами.Модуль(14,40)}: Обращение к процедуре как к функции (РассчитатьСумму)
        РаботаСДокументами.РассчитатьСумму(<<?>>РассчитатьСумму(СтрокаТабличнойЧасти); (Проверка: Тонкий клиент)
{ОбщийМодуль.РаботаСДокументами.Модуль(14,77)}: Ожидается символ ')'
        РаботаСДокументами.РассчитатьСумму(РассчитатьСумму(СтрокаТабличнойЧасти)<<?>>; (Проверка: Тонкий клиент)
{ОбщийМодуль.РаботаСДокументами.Модуль(14,40)}: Обращение к процедуре как к функции (РассчитатьСумму)
        РаботаСДокументами.РассчитатьСумму(<<?>>РассчитатьСумму(СтрокаТабличнойЧасти); (Проверка: Тонкий клиент)
{ОбщийМодуль.РаботаСДокументами.Модуль(14,77)}: Ожидается символ ')'
        РаботаСДокументами.РассчитатьСумму(РассчитатьСумму(СтрокаТабличнойЧасти)<<?>>; (Проверка: Тонкий клиент)
Документ.Документ1: Объект не включен ни в одну подсистему, отображаемую в командном интерфейсе
{ОбщийМодуль.РаботаСДокументами.Модуль(7,31)}: Переменная не определена (Элементы)
         СтрокаТабличнойЧасти = <<?>>Элементы.Материалы.ТекущиеДанные; (Проверка: Тонкий клиент)
{ОбщийМодуль.РаботаСДокументами.Модуль(13,31)}: Переменная не определена (Элементы)
         СтрокаТабличнойЧасти = <<?>>Элементы.Материалы.ТекущиеДанные; (Проверка: Тонкий клиент)
Документ.Документ1: Объект не включен ни в одну подсистему, отображаемую в командном интерфейсе
                   

Максим75

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

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

вот эти два обработчика связаны с событиями формы?

общий модуль РаботаСДокументами доступен на клиенте? В конфигураторе найдите этот общий модуль, кликнете на нем один раз и посмотрите в свойствах этого модуля, какие галки стоят

так то вроде все должно работать.
ну и включите документ в какую-нибудь подсистему, иначе он не отобразится в интерефейсе.

Panhead

Здравствуйте! Я обучаюсь Основам конфигурирования 1С и прошу вас помочь в моём вопросе. Я впервые на этом форуме и к сожалению не смог создать новую тему. Но к счастью я нашёл вашу, которая на 100% подходит под мою проблему (проблема с написанием кода 1с).


Вот какая задача у меня стоит:

Магазин осуществляет два основных действия: закупка у поставщика и продажа.
Иногда товар сразу попадает на витрину магазина, а иногда сначала на склад, а потом в магазин. Также можно перемещать товары между разными магазинами. Поэтому нам понадобится ещё одно действие – перемещение.
Для документов «Закупка» и «Продажа» в каждой строке табличной части автоматически рассчитывайте поле «Стоимость». Обратите внимание, что дублирования кода быть не должно, используйте общий модуль. (общий модуль и документы все созданы!)
Создайте подсистемы Склад и Продажа. Поместите в них соответствующие документы.
Настройте командный интерфейс так, чтобы было удобно осуществлять основные действия.






Проблема заключается в том, что мне не совсем понятно как написать код так, чтобы при обновлении табличных частей (количество, цена) документов (закупка, продажа) обновлялось табличная часть "стоимость".
У меня есть вариант, который закомментирован на скринах (Такой код  увидел у вас в сообщениях выше) был в учебнике "Практическое пособие разработчика". Он работает, но я хотел потренироваться и сделать через функции (то что не закомментировано это мои попытки). В конечно итоге он он выдаёт ошибку, что поле не найдено.
Скажите пожалуйста, чего я не понял?


С уважениме, Panhead!

alexandr_ll

Panhead, Поскольку в общем модуле в функцию Рассчитать стоимость передаются параметры Количество и Цена, то в форме документа их также следует указывать.
У вас
СтрокаТабличнойЧасти.Стоимость=РасчетСтоимости.РасчитатьСтоимость(Элемент)А надо
СтрокаТабличнойЧасти.Стоимость=РасчетСтоимости.РасчитатьСтоимость(НоваяКоличество,НоваяЦена)

bsn-chita

А по задумке автора что это должно было делать?
Если СтрокаТабличнойЧасти.Количество.Изменено Или СтрокаТабличнойЧасти.Цена.Изменено Тогда

АляАля

добрый день прошу помощи по Радченко учусь, не считается сумма в документе оказание услуг, в приходной наклодной все норм,а в этом доке, не суммируется где ошибка в коде может быть?

alexandr_ll

АляАля, А какой код-то?

Теги:

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

Рейтинг@Mail.ru

Поиск