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

Помогите со связкой таблиц 8.1

Автор Элен62, 16 фев 2011, 12:01

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

Элен62

и кстати...со строчной ЗаполнитьЗначенияСвойств(СтрокаТабличнойЧастиСотрудники, СтрокаТабличнойЧасти);
считать не хочет)). Лучше с предыдущей пусть будет

Элен62

с таблицей разобралась, убрала

Элен62


Klyacksa

Эм... ничего не поняла.
Какая ошибка-то осталась? Что решаем? ;)
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Элен62

Сумма и СуммаНДС и Всего пока не считается, борюсь). Все остальное рабочее)

Элен62

А может код надо добавлять не в СуммаПриИзменении? Я ж ввожу вручную кол-во и цену. А субба считается автоматически. Также и Всего считается. Сейчас посмотрю куда еще можно прописать...при активации может

Klyacksa

Кстати, если вам нужно перезаполнять строку в Сотрудниках при изменении одного из нескольких полей Услуг, то перезаполнение рекомендую вынести в отдельную процедуру. Тогда получится:

Процедура УслугиКоличествоПриИзменении(Элемент)
  СтрокаТабличнойЧасти = ЭлементыФормы.Услуги.ТекущаяСтрока;

  ОбработкаТабличныхЧастей.РассчитатьКоличествоМестТабЧасти(ЭлементыФормы.Услуги.ТекущиеДанные, ЭтотОбъект);
  ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(ЭлементыФормы.Услуги.ТекущиеДанные, ЭтотОбъект);
  ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(ЭлементыФормы.Услуги.ТекущиеДанные, ЭтотОбъект);

  ОтработатьИзменения(СтрокаТабличнойЧасти); // И ТАКУЮ СТРОКУ ВСТАВИТЬ ВО ВСЕХ НУЖНЫХ ПРОЦЕДУРАХ "ПРИ ИЗМЕНЕНИИ"
КонейПроцедуры

Процедура ОтработатьИзменения(СтрокаТабличнойЧасти)
  ТабЧастиСотрудники=ЭтотОбъект.Сотрудники;  
  Если ТабЧастиСотрудники.Количество()<СтрокаТабличнойЧасти.НомерСтроки тогда
       СтрокаТабличнойЧастиСотрудники=ТабЧастиСотрудники.Добавить();
  Иначе
       СтрокаТабличнойЧастиСотрудники=ТабЧастиСотрудники.Получить(СтрокаТабличнойЧасти.НомерСтроки-1);
  КонецЕсли;  
 
  // ну и тут дальше ваши изменения
  СтрокаТабличнойЧастиСотрудники.Количество=СтрокаТабличнойЧасти.Количество;
КонецПроцедуры
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Klyacksa

Цитата: Элен62 от 17 фев 2011, 15:53
А может код надо добавлять не в СуммаПриИзменении? Я ж ввожу вручную кол-во и цену. А субба считается автоматически. Также и Всего считается. Сейчас посмотрю куда еще можно прописать...при активации может
Не надо пороть горячку) не надо в "при активации".
Сумму можно перезаполнять в тот момент, когда перезаполняете Количество и Цену. То есть, чтобы при изменении Кол-ва  перезаполнялось Кол-во и Сумма сразу.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Элен62

А я добавила необходимые строки для изменения в УслугиКол-воПри изменении и Такуюже строку и УслугиЦенаПриИзменении и он считает и пересчитывает.

СтрокаТабличнойЧастиСотрудники.Сумма=СтрокаТабличнойЧасти.Сумма;


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

Klyacksa

:)
Если вам нужно полное соответствие таблиц в Услуги и Сотрудники, то не забудьте еще протестировать корректность при удалении строки из Услуг.
А ручное изменение таблицы Сотрудники вы учитываете? Потому как если кто-то залезет и строчку удалит из Сотрудников - будут неправильные строки редактироваться.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Теги:

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

Рейтинг@Mail.ru

Поиск