• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

ввод данных в таблицу значений

  • Автор темы Автор темы ALEXAND
  • Дата начала Дата начала
A

ALEXAND

Подскажите пожалуйста начинающему как обеспечить ввод данные пользователем в таблицу значений, созданную в обработке? Тут как то через текущую строку и колонке надо..Как?))
 
Повесить процедуру на таблицу, в процедуре

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

Перем Цена, Количество, Произведение;
Процедура ПриОткрытии()
Табло.НоваяКолонка("Цена", "Число",10,,"Цена")
Табло.НоваяКолонка("Количество", "Число",10,,"Количество")
Табло.НоваяКолонка("Произведение", "Число",10,,"Произведение")
КонецПроцедуры

Процедура Значение()
Перем НомерСтроки;
НомерСтроки=Табло.ТекущаяСтрока();

Если
Табло.ТекущаяКолонка()=1
Тогда ВвестиЧисло(Цена,"Цена", ,,);
Табло.УстановитьЗначение(НомерСтроки,1,Цена);
ИначеЕсли
Табло.ТекущаяКолонка()=2
Тогда ВвестиЧисло(Количество,"Количество", ,,);
Табло.УстановитьЗначение(НомерСтроки,1,Количество);
КонецЕсли
Табло.Произведение=Табло.Цена*Табло.Количество;
КонецПроцедуры
 
Точки с запятой точно не хватает :)
КонецЕсли ;
Табло.Произведение=Табло.Цена*Табло.Количество;
 
А если более серьезно - надо все же перед вызовом процедуры "Значение" создать хотя бы одну строку
Табло.НоваяСтрока();
А то боюсь, что при входе в эту процедуру
Табло.ТекущаяСтрока() = 0 !
 
То есть вообще не спрашивает число???? а процедура на таблице точно повешена???

Табло.Произведение=Табло.Цена*Табло.Количество; - вот тут он не знает куда писать.

тем же установить значение. Типа вместо верхнего

Цена = Табло.ПолучитьЗначение(НомерСтроки,1);
Количество = Табло.ПолучитьЗначение(НомерСтроки,2);
Произведение = Цена*Количество;
Табло.УстановитьЗначение(НомерСтроки,3,Произведение);
 
Процедура КликПоТабло(Строк,Колонка)
Если Строк<>0 Тогда
Если Колонка = "Материал" Тогда
ОткрытьФорму(Табло.ПолучитьЗначение(Строк,Колонка));
ИначеЕсли Колонка = "Количество" Тогда
НовоеЗначение = Табло.ПолучитьЗначение(Строк,Колонка);
Если ВвестиЧисло(НовоеЗначение,"Введите количество",15,2,60)=1 Тогда
Табло.УстановитьЗначение(Строк,Колонка,НовоеЗначение);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры


в талице значений прописываем КликПоТабло(Табло.ТекущаяСтрока(),Табло.ТекущаяКолонка())

это как пример :)
 
ОткрытьФорму(Табло.ПолучитьЗначение(Строк,Колонка)); - круто! а я всегда парился с условиями! Обязательно попробую!
 
Выдаёт ошибку при попытке ввода данных Поле агрегатного объекта ТекущаяКолонка не обнаружено.
 
Процедура ПриОткрытии()
Табло.НоваяКолонка("Цена", "Число",10,,"Цена")
Табло.НоваяКолонка("Количество", "Число",10,,"Количество")
Табло.НоваяКолонка("Произведение", "Число",10,,"Произведение")
НоваяСтрока();
КонецПроцедуры
Это лишнее , дальше как в примере
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab