|
Как выделить цветом позиции в документе, по которым остаток =0 | ☑ | ||
---|---|---|---|---|
0
sagitt
29.12.21
✎
10:48
|
Добрый день друзья, поздравляю всех с наступающим Новым Годом.
Необходимо выделить красным строки документа, если на остатках нет этой номенклатуры. База самодельная, ни на что не похожа. Ввел в реквизиты формы добавил колонку "Остаток", чтобы использовать для условного оформления, тип число. Но не могу понять, как ее можно заполнить остатками склада. Конечно запрос то я создам, но в каких процедурах это надо делать не знаю. в интернете по теме нашел _https://zdst.net/1s-8-3-kak-dobavit-dopolnitelnuyu-vychislyaemuyu-kolonku-v-tablichnoj-chasti-upravlyaemoj-formy/ Но там заполняется табличная часть объекта, что делать не хочется, ведь это приведет к увеличению объема базы. Подскажите, как правильно решить проблему. |
|||
1
PuhUfa
29.12.21
✎
10:51
|
(0) возьми любую типовую... БП, УТ, ЕРП, там в каждом документе есть примеры
|
|||
2
Kassern
29.12.21
✎
10:55
|
(0) УФ - через условное оформление, ОФ - через событие ТЧ
|
|||
3
Kigo_Kigo
29.12.21
✎
10:55
|
при выборе номенклатуры (или при заполнении ТЧ)запросом смотрим остаток, подставляем его, и если он ноль, раскрашиваем строку в чем трудность?
|
|||
4
sagitt
29.12.21
✎
11:04
|
У меня УФ.
Трудность в том, как подставить. Не пойму, как можно заполнить новую колонку. |
|||
5
Kassern
29.12.21
✎
11:06
|
(4) Создаете колонку с остатком, далее простое условие в Условном оформлении Остаток<0 Цвет такой-то
|
|||
6
vicof
29.12.21
✎
11:06
|
Не в реквизиты формы, а в динамическом списке надо запрос менять.
|
|||
7
Kassern
29.12.21
✎
11:09
|
(6) вы о чем? Какой список?) "Необходимо выделить красным строки документа"
|
|||
8
Kassern
29.12.21
✎
11:09
|
тут речь о ТЧ документа, сколько я понял из (0)
|
|||
9
sagitt
29.12.21
✎
11:10
|
У меня форма документа. На ней расположена табличная часть "Товары".
|
|||
10
Kassern
29.12.21
✎
11:10
|
||||
11
Kassern
29.12.21
✎
11:10
|
почитайте на досуге, может получится под новый год сделать разноцветные строчки)
|
|||
12
vicof
29.12.21
✎
11:11
|
(7) Упс, сорян. Уже в глазах рябит то таких тем)
|
|||
13
vicof
29.12.21
✎
11:11
|
от*
|
|||
14
sagitt
29.12.21
✎
11:17
|
(10) Спвсибо за ссылки. Настроить условное оформление проблем не составляет но для начала надо получить остаток в какой то колонке ТЧ документа. Я уже приводил ссылку на решение аналогичной задаи, но там предполагается наличие поля остаток в реквизитах табличной части документа объекта.
Мне же хочется получить остатки динамически. |
|||
15
sagitt
29.12.21
✎
11:19
|
(1) Уважаемый PuhUfa, не подскажите, в каком документе УТ можно посмотреть такой пример?
|
|||
16
Kassern
29.12.21
✎
11:21
|
(14) если есть реквизит КодСтроки, или позиции у вас уникальные, то можете сделать программно условие, для списка таких строк
|
|||
17
vicof
29.12.21
✎
11:21
|
(14) В (0) нормальное решение. С чего там объем базы увеличится?
|
|||
18
sagitt
29.12.21
✎
11:25
|
(17) Если сейчас приходится хранить Xбайт на каждую строчку, то после добавления еще одного реквизита будет X+Y байт, где Y>0.
Документов очень много. база и так весит около 50 ГБ. |
|||
19
sagitt
29.12.21
✎
11:27
|
(14) А есть где-нибудь пример посмотреть, как реализовать такое программно условие?
|
|||
20
PuhUfa
29.12.21
✎
11:27
|
(15) Да в том же заказе клиента или РТиУ. Посмотри как сделаны служебные колонки ТЧ
|
|||
21
vicof
29.12.21
✎
11:27
|
(18) У тебя реквизит формы добавляется. Который заполняется программно.
|
|||
22
Kassern
29.12.21
✎
11:27
|
(18) Гляньте на колонку артикул в типовой базе, по факту это всего лишь реквизит ТЧ, который заполняется из номенклатуры
|
|||
23
vicof
29.12.21
✎
11:27
|
+(21) А не реквизит объекта.
|
|||
24
Kassern
29.12.21
✎
11:28
|
Вам никто не говорит добавлять реквизит Остаток в ТЧ объекта
|
|||
25
Мимохожий Однако
29.12.21
✎
11:29
|
(18) не забудь потом сделать замер при открытии формы документа до и после динамического получения остатков. Возможно, при большой базе лучше добавить немного реквизитов, чем иметь тормоза.
|
|||
26
sagitt
29.12.21
✎
11:30
|
Я описывал пример, который нашел. Возможно там опечатка.
|
|||
27
Kassern
29.12.21
✎
11:30
|
(25) оставьте это для следующей темы ТС)
|
|||
28
Kigo_Kigo
29.12.21
✎
11:30
|
(18) (19) Ты же будешь выделыть в ТЧ документа а не в динамическом списке списка документов, причем тут ТЧ документа и сам документ, тем более список этих документов
|
|||
29
Мимохожий Однако
29.12.21
✎
11:31
|
По большому счёту остаток нужен только при подборе товара в табличную часть документа. А после проведения получать остатки-нелогичное излишество.
|
|||
30
sagitt
29.12.21
✎
11:36
|
(22) Артикул однозначно связан с номенклатурой, поэтому легко получается как Объект.Товары.Артикул
Мнеже необходимо получить данные по запросу. (29) Я с вами согласен в целом, но у клиента существует своя точка зрения. А она как известно не нобязана быть логичной. Он просто так хочет. А я должен сделать чтобы так было. |
|||
31
Kassern
29.12.21
✎
11:38
|
(30) ну так получайте и заполняйте этот реквизит формы каждый раз при изменении номенклатуры/строк
|
|||
32
Kassern
29.12.21
✎
11:40
|
это плата за то, что вы не храните инфу в базе (приходится каждый раз открывая документ, считывать остатки). А потом получите интересное событие. Вас спросят, а какого художника товар товар светится красным, а мы его продали?)) А дело в том, что кто-то задним числом отредактировал отгрузку/списание/приход товара, а у вас нет информации, какой отображался остаток на момент проведения документа, вы лишь сможете отобразить, какой он на дату документа.
|
|||
33
vicof
29.12.21
✎
11:44
|
(32) Можно подойти после этого к пользователю, взять за шкирку и тыкать носом в листочек с его техзаданием)
|
|||
34
Kassern
29.12.21
✎
11:46
|
(33) а они будут с выпученными глазами говорить, мол вы же тут специалист, почему не сказали, что так может быть!
|
|||
35
vicof
29.12.21
✎
11:51
|
(34) И после этого можно гнуть свою линию. Т.е. они признают, что ты специалист, и как ты сказал, так и будет.
|
|||
36
Мимохожий Однако
29.12.21
✎
11:53
|
(30) Подобный подход к задаче мне понятен. Я через него прошёл в своё время. Клиент прав, если платит. Советую изложить свои возражения на бумаге и завизировать у заказчика, чтобы потом при очередных непонятках сунуть ему в нос и взять еще раз денежку за отключение этой функциональности.
|
|||
37
Kassern
29.12.21
✎
12:00
|
(35) другая логика у них, если ты специалист, то должен был предусмотреть и предупредить, а если не специалист, то за что тебе платили бабки?)
|
|||
38
sagitt
29.12.21
✎
12:10
|
(31)Как его заполнить?
Чтобы заполнить нужо перебрать строки списка. для каждого с из Объект.Товары цикл не пройдет: перебирается именно табличная часть документа, данных по новой колонке там нет. У элементы.Товары (ТаблицаФормы, соотв тч товары) есть только Текущаястрока и ТекущиеДанные Но я понимаю, если в 1С сделали возможность ввести колонку , значит должна быть возможность ее заполнить. Подскажите, как. |
|||
39
Kigo_Kigo
29.12.21
✎
12:13
|
||||
40
Мимохожий Однако
29.12.21
✎
12:14
|
(38) выполняй операции НаСервере или в модуле документа.
|
|||
41
sagitt
29.12.21
✎
12:16
|
(40) Так что нужно выполнить, чтобы в каждой строке прописать Остаток=1?
|
|||
42
vicof
29.12.21
✎
12:18
|
||||
43
Мимохожий Однако
29.12.21
✎
12:19
|
(41) Надо написать несколько процедур в разных модулях.
|
|||
44
vicof
29.12.21
✎
12:21
|
(37) Тут уже от личных качеств зависит, как себя поставишь)
|
|||
45
sagitt
29.12.21
✎
12:32
|
(42) Спасибо. Все получилось.
|
|||
46
sagitt
29.12.21
✎
12:39
|
(44)Причем и Специалиста и Клиента.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |