|
v7: Вывод суммы | ☑ | ||
---|---|---|---|---|
0
msk-07
09.08.13
✎
20:43
|
Подскажите, в документе выводится общая сумма по всем позициям выбранной номенклатуры. А мне нужно сделать, что если одна из сумм номенклатуры равна нулю, то сумма общая сумма тогда тоже должна равняться нулю....
может кто подскажет, в какой момент и где делать такую проверку? |
|||
1
Мария Елена
09.08.13
✎
20:45
|
давай думать
1. помидор 100р 2. огурец 200р 3. яйцо 0р чему равна сумма документа ? |
|||
2
msk-07
09.08.13
✎
20:47
|
300, а мне нужно чтобы было 0
Поэтому и обратился, используется стандартная функция глФРМ(Итог"Сумма")..а мне нужно чтобы пробегал по строкам и выводил значение в ноль.. |
|||
3
Мария Елена
09.08.13
✎
20:52
|
(2) поиск по строкам
если есть нуль -- возврат нульЮ иначе ... иначе |
|||
4
msk-07
09.08.13
✎
20:54
|
А где это? примерно?
|
|||
5
Мария Елена
09.08.13
✎
21:02
|
найти значение ?
|
|||
6
msk-07
09.08.13
✎
21:03
|
Это отдельно функцию писать?
|
|||
7
msk-07
09.08.13
✎
21:04
|
Простите, наверное немного для Вас странные вопросы
мне просто мне не понятно как это в документе реализовать в каком месте |
|||
8
Мария Елена
09.08.13
✎
21:14
|
перебрать и проверить программно
|
|||
9
msk-07
09.08.13
✎
21:14
|
Спасибо.
Не буду напрягать, но все равно не понял.. |
|||
10
oslokot
09.08.13
✎
21:25
|
(0) в тот момент, в который выводится итоговая сумма. Наверняка у тя на форме Функция: Итог("Сумма"). Замени ее на свою, например ПолучитьИтогСумма(). В ней пиши твои условия и возврат значения 0 или итог суммы по документу
|
|||
11
jarett
09.08.13
✎
21:34
|
К Денису Че срочно! Итоги в шапку складывать )))))))))))))
|
|||
12
msk-07
09.08.13
✎
21:47
|
Я бы с удовольствием на хорошие курсы по программированию походил
|
|||
13
msk-07
09.08.13
✎
21:51
|
Функция ПроверкаСтрок(Ст)
Ст=0; ТаблицаПодбора = СоздатьОбъект("ТаблицаЗначений"); ТаблицаПодбора.НоваяКолонка("Количество", "Число"); ТаблицаПодбора.НоваяКолонка("Сумма"); ТаблицаПодбора.НоваяСтрока(); ТаблицаПодбора.Количество = Количество; ТаблицаПодбора.СуммаНП = Сумма; ТаблицаПодбора.ВыбратьСтроки(); Пока ТаблицаПодбора.ПолучитьСтроку()=1 Цикл Если Количество > Сумма Тогда Ст=0; КонецЕсли ; КонецЦикла КонецФункции |
|||
14
msk-07
09.08.13
✎
21:52
|
написал....но не работает
|
|||
15
msk-07
09.08.13
✎
22:01
|
Помогите пожалуйста разобраться...может я не так строки перебираю ?
|
|||
16
Zhuravlik
09.08.13
✎
22:09
|
тз = СоздатьОбъект("ТаблицаЗначений");
ВыгрузитьТабличнуюЧасть(тз); Если тз.НайтиЗначение(0, 0, "Сумма") = 1 ТОгда Возврат 0; Иначе Возврат Итог("Сумма"); КонецЕсли; |
|||
17
Zhuravlik
09.08.13
✎
22:12
|
(12) http://курсы-по-1с.рф/free/ - бесплатные курсы -> Нулевой блок (~6 часов) - отпадет много лишних вопросов. Но это по 8.
|
|||
18
Zhuravlik
09.08.13
✎
22:16
|
(13) Не возвращает ничего функция. Да и тормозить будет, если по формуле все время строки перебирать.
Если такая проверка всегда нужна будет (т.е. не на пару дней для отладки там), я б вообще заморочился, в ПриОткрытии() - выгружаем таб. часть в тз, в ПриОкончанииРедактированияСтроки() проверяю сумму, это чтобы по формуле не дергать метод ВыгрузитьТабличнуюЧасть() - тоже может притормаживать. |
|||
19
Zhuravlik
09.08.13
✎
22:20
|
+ А даже проще повесить формулу на ячейку "Сумма", и в этой формуле проверять, равна ли вбитая сумма 0. Если да, то установить заголовок текстовому контролу 0, иначе - Итог("Сумма"). Только тогда с самого контрола убрать функцию, и делать проверку из (16) в ПриОТкрытии()
|
|||
20
msk-07
09.08.13
✎
22:38
|
Я все сделал как в (16) Вы написали..но почему-то выдает значение 0, хотя сумма вбила :(...Я наверное безнадежен
|
|||
21
msk-07
09.08.13
✎
22:38
|
Может я не ту таблицу значений выгружаю?
|
|||
22
msk-07
09.08.13
✎
22:53
|
спасибо!!!!! Все работает. Очень благодарен за помощь!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |