|
v7: 1cv7 Проблема с вводом данных подчиненного справочника.... подробнее внутри | ☑ | ||
---|---|---|---|---|
0
Джордж1
11.08.21
✎
18:48
|
Имеются 3 справочника - Товар, Спецификации, НормыРасхода
Спецификации подчинена Товарам, а НормаРасхода Спецификациям Проблема в чем. Встаем на существующий товар (Товар1) с существующей спецификацией (Спец1). В подчиненных справочниках все ОК. Переходим на другой товар (Товар2) у которого спецификация не заведена. Проблема что в этом случае справочник Владелец справочника НормыРасхода остается спозиционирован на спецификации Спец1 Товара1 Пользователи начинают заводить нормы - они привязываются непойми к какому элементу Как отловить такую ситуацию? |
|||
1
серый КТУЛХУ
11.08.21
✎
18:50
|
сверять "ИспользоватьВладельца()" с нужным значением в форме списка (или элемента) подчиненного справочника. устанавливать нужного.
|
|||
2
серый КТУЛХУ
11.08.21
✎
18:50
|
наверное можно и через контекст "снаружи"...
|
|||
3
Джордж1
11.08.21
✎
18:51
|
(1)как внутри формы понять какой нужный? счас картинку покажу
|
|||
4
Джордж1
11.08.21
✎
18:52
|
||||
5
серый КТУЛХУ
11.08.21
✎
19:12
|
охохонюшки. костылями только тогда. в "предпоследнем" справочнике.
открывать подчиненный только своей кнопкой - с сохранением его контекста в переменную модуля (например, мКонтекстФормыСпискаПодчиненногоСправочника) в процедуре, прописанной в формуле кнопки. на морду - текстовый реквизит с функцией в формуле, в которой (в модуле формы) закодировать: мКонтекстФормыСпискаПодчиненногоСправочника.Форма.ТолькоПросмотр(?(мКонтекстФормыСпискаПодчиненногоСправочника.ИспользоватьВладельца()=ТекущийЭлемент(),0,1)) |
|||
6
серый КТУЛХУ
11.08.21
✎
19:15
|
ЗЫ: хотя хз оно успеет обновиться или нет - тогда еще один костыль придумывать придется...
|
|||
7
acanta
11.08.21
✎
19:31
|
Нормы расхода в последних версиях были документами.
|
|||
8
Смотрящий
11.08.21
✎
19:36
|
(4) список открытых форм справочников в глобальную переменную (при закрытии удалять из списка)
при изменении строки справоника владельца смотреть список форм из глобальной переменной и переоткрывать форму в форме ловить владельца в ПриПовторномОткрытии |
|||
9
Mikeware
11.08.21
✎
19:50
|
А чего б не переписать по нормальному, без кучи окон?
|
|||
10
серый КТУЛХУ
11.08.21
✎
21:13
|
Только что проверил - (5) отлично работает.
|
|||
11
Джордж1
11.08.21
✎
21:41
|
(5)спасибо, попробую
(9)без кучи окно - это с ТЗ на форме чтоли? |
|||
12
HawkEye
11.08.21
✎
22:24
|
(11) можно обработку с ТЗ на форме, можно документ сделать служебный, можно модально открыть...
но вообще сейчас пощелкал.. отображение в третьем справочнике меняется при изменении в первом, а описанный тобой эффект проявляется только если в третьем начать редактировать и перейти на первый, тогда да в третьем будет не родной потомок, но это все пока строка в редактировании... |
|||
13
Джордж1
11.08.21
✎
22:28
|
(12)"отображение в третьем справочнике меняется при изменении в первом," - а вы попробуйте вариант когда во втором справочнике нет элемента
"а описанный тобой эффект проявляется только если в третьем начать редактировать и перейти на первый," - у меня иногда вообще записи в 3-м справочнике получаются без владельца. Сэмулировать пока не смог А вот с модальностью интересный вариант |
|||
14
серый КТУЛХУ
11.08.21
✎
23:48
|
(13): а ты попробуй в третьем в списке при пустом вротоп - добавить но не завершать редактирование строки - вернуться во второй и в нем добавить и сохранить - вернуться в третий и там закончить редактирование нового элемента с сохранением..
(с режимом "редактировать в списке") |
|||
15
HawkEye
12.08.21
✎
00:04
|
(13) на скорую руку набросал, пару раз протестил, вроде норм.. если во втором пусто, то третье закрывается, если во втором есть чё, то по новый открывается...
во втором пишешь: Процедура ПриВыбореВладельца(вхЭлемент) ОткрытьФорму("Справочник.Спр3", вхЭлемент); КонецПроцедуры в третьем пишешь: Перем НужнаПроверка; Процедура ПриПовторномОткрытии() НужнаПроверка = 1; КонецПроцедуры Процедура ПриОткрытии() НужнаПроверка = 0; КонецПроцедуры Функция ПроверкаВладельца() Если НужнаПроверка = 1 Тогда Если форма.параметр <> ИспользоватьВладельца().Владелец Тогда Спр = СоздатьОбъект("Справочник.Спр2"); Спр.ИспользоватьВладельца(форма.параметр); Если Спр.ВыбратьЭлементы(1) = 0 Тогда Форма.Закрыть(); КонецЕсли; КонецЕсли; КонецЕсли; Возврат ""; КонецФункции и на форму третьего кидаешь функцию ПроверкаВладельца() |
|||
16
Mikeware
12.08.21
✎
08:07
|
(11) зачем с ТЗ - можно и с табличным полем. точнее, с двумя (для спецификации и нормы расхода).
можно дерево сделать, корень- номенклатура, 1-й уровень спецификации, 2-й - нормы. |
|||
17
Джордж1
12.08.21
✎
08:16
|
(16)нет в 7-ке табличного поля
|
|||
18
Андрей_Андреич
naïve
12.08.21
✎
08:25
|
(17) Тут у каждого своя семерка
|
|||
19
Mikeware
12.08.21
✎
08:28
|
(16) у нормальных семерочников - есть.
|
|||
20
ADirks
12.08.21
✎
08:30
|
Лучше таки свою форму слепить. Пожалей бедных юзеров. С этими подчиненными формами вынос мозга сплошной.
|
|||
21
HawkEye
12.08.21
✎
08:38
|
(17) в 1срр есть..
|
|||
22
tgu82
12.08.21
✎
08:40
|
(0) Если нет Спецификации у товара закрыть справочник норм. Создал спецификацию и тогда нормы появились на экране.
С нормами понятно - они нужны и могут быть периодическими, но зачем куча спецификаций на один и тот же товар - думаю это лишнее. |
|||
23
Mikeware
12.08.21
✎
08:44
|
(22) затем, что нормы расхода - состав спецификации. спецификация утверждается на определенный период.
|
|||
24
tgu82
12.08.21
✎
08:49
|
(23) Где как. Норсы расхода могут быть периодическими как в ПУБ 7.7
|
|||
25
Mikeware
12.08.21
✎
08:51
|
(24) это чрезжопица.
в нормальных организациях утверждают/переутверждают рецептуру (по сути - документ) |
|||
26
Джордж1
12.08.21
✎
08:55
|
(22)чем куча спецификаций на один и тот же товар - это не товар, это продукция - кулинария/выпечка. Но мысли сделать 1 товар = 1 спецификация есть
(25)в моем случае ненормальная |
|||
27
Джордж1
12.08.21
✎
09:02
|
(24)Учитывая как реализовано хранение периодических сведений в 7-ке - лучше не надо
|
|||
28
Джордж1
12.08.21
✎
09:03
|
А может кто-то помнит
Был же в 7-ке вариант "эмуляции" регистров сведений на регистрах 7-ке. Без ресурсов что ли. Не могу вспомнить |
|||
29
Mikeware
12.08.21
✎
09:04
|
(26) у тебя утверждают "изменения"?
вы и меню, небось, один раз пишете, на 01 января, а потом изменения - " с 01.03 в супе грибном п.1.1 грибы заменить на соленые огурцы, цену уменьшить на 7 копеек","в каше рисовой рис заменить на гречку из расчета 1:1.2" ? и вывешиваете рядом с меню список изменений, да? посетитель заказывает по меню салат, грибной супчик и кашу рисовую с котлетой, а "в связи с изменениями, внесенными приказами 1, 7, 12, 18, и 26" получает яичницу, рассольник и гречку с рыбой... |
|||
30
Mikeware
12.08.21
✎
09:05
|
(28) не надо. сделай на справочниках, и прямых запросах
|
|||
31
Джордж1
12.08.21
✎
09:06
|
(29)да ничего нет, даже цены толком не отслеживают. Каждый повар по своей спецификации работает.
Вот вчера выяснилось что в голубцы ленивые идет 800 гр. мяса на кг. готового продукта. Как правильно никто не знает |
|||
32
Mikeware
12.08.21
✎
09:08
|
(31) весело... в одной ленивой конторе ленивый повар лениво делал ленивые голубцы...
|
|||
33
Mikeware
12.08.21
✎
09:14
|
(31) сейчас нет ничего типа советского "сборника рецептур блюд дл япредприятий общественного питания на предприятиях и в учебных заведениях"? там же все описывалось, стандартно, вплоть до замен...
я умудрился в свое время даже экзамены сдать нахаляву по ней, хотя и не учился... |
|||
34
Злопчинский
12.08.21
✎
09:16
|
в одной ленивой конторе ленивый повар лениво ленился делать ленивые голубцы...
|
|||
35
Андрей_Андреич
naïve
12.08.21
✎
09:25
|
У меня спецификация это документ. И их действительно несколько на каждую продукцию потому что нормы меняются, комплектующие могут меняться. Регистр делать не стал, как и периодику - создал свою табличку и читаю прямым запросом.
Ах да - еще документ доп.спецификация. Используют когда нормы править не надо, комплектующих нет - надо заменить разово. |
|||
36
Джордж1
12.08.21
✎
15:35
|
В общем нашел вариант сделать проще
Делаем глобальную переменную ТекЭелементСпр2 На форме справочника 2 вешаем на форму невидимую функцию Обработка() Функция Обработка() ТекЭлементСпр2 = ТекущийЭлемент(); КонецФункции Ну и в справочнике 3 проста проверочка при вводе строки Процедура ПриВводеСтроки() Если ИспользоватьВладельца()<>ТекЭлементСпр2 Тогда СтатусВозврата(0); Возврат; КонецЕсли; КонецПроцедуры |
|||
37
HawkEye
12.08.21
✎
15:38
|
(36) глобальные переменные - это пошло )))
|
|||
38
Джордж1
12.08.21
✎
15:39
|
(37)Ага, в этой конфе это первая глобальная переменная получилась
|
|||
39
acanta
12.08.21
✎
22:10
|
(37) в начале 7ки нормально было глобальная переменная, содержащая тз со всеми спецификациями и нормами расхода для выбора вместо ТМЦ как формы списка с отбором по типу продукция.
|
|||
40
acanta
12.08.21
✎
22:15
|
Тз заполнялась при начале работы системы и по кнопке обновить в справочнике. Теоретически, архитектура при такой работе принципиально не имеет значения.
|
|||
41
Джордж1
12.08.21
✎
22:34
|
(40)так это надо обработчики ТЗ на форме писать + работать с ТЗ не так удобно как со справчоником
|
|||
42
acanta
12.08.21
✎
22:37
|
(41) если ТЗ на форме выбора одна, то всем все удобно..
|
|||
43
HawkEye
13.08.21
✎
00:45
|
(39) глобальные переменные являющиеся аналогами константы - это одно и использовались они не только в начале 7-ки, но и сейчас.... а глобальные переменные как переменные, даже в начале 7-ки не использовались...
|
|||
44
HawkEye
13.08.21
✎
00:45
|
(41) сделай документ ))
|
|||
45
Злопчинский
13.08.21
✎
00:50
|
(43) ну... не совсем...
в 77 глРасшифровка - самая что ни на есть глобальная... ну и целый блок глобальных переменных для работы с МФ хотя может я чего и не понял |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |