|
v7: Перенос с формы справочника в реквизит справочника | ☑ | ||
---|---|---|---|---|
0
bug16
22.06.12
✎
11:13
|
Подскажите как сделать. ТиС 7.7
Есть справочник номенклатура. На форму справочника добавили поле, допустим "цвет"! Но этот элемент не добавили в реквизиты справочника. Теперь если делать какой нибудь отчет, то не могу обратится к полю "цвет". Я сделал следующее добавил это поле в реквизиты справочника. Теперь чтобы это значение правильно записалось, мне нужно каждый элемент справочника открыть и нажать кнопку "Записать". Тогда в этот реквизит все правильно будет записываться! А как мне программно сделать эту перезапись. Я так полагаю мне надо открыть форму, сделать "записать" и закрыть форму..... как программно записать и закрыть форму? спр=СоздатьОбъект ("справочник.Номенклатура") ; спр.ВыбратьЭлементы (); Пока Спр.ПолучитьЭлемент()=1 Цикл ОткрытьФорму (Спр.ТекущийЭлемент(),Конт); |
|||
1
lucifer
22.06.12
✎
11:15
|
зачем открывать форму, просто вызывай метод записать()
|
|||
2
ДенисЧ
22.06.12
✎
11:15
|
какой-то бред
Если у тебя Цвет - не реквизит справочника, то он заполняется при открытии формы. Вот возьми этот код и пробегись им по всему справочнику... |
|||
3
Ork
22.06.12
✎
11:16
|
(22) Все не так и все не там.
Каким образом при открытии формы берется значение реквизита "допустим "цвет"!" ЗЫ. И не нужно столько восклицательных знаков. |
|||
4
bug16
22.06.12
✎
11:19
|
(1) методом ЗАписать () пробывал, не получается
на форме справочника добавлено поле ввода с типом Справочник.ЗначенияСвойств этого поля нету в реквизитах Справочника! (3) Восклицательные знаки запрещаются? Кем? |
|||
5
viktor_vv
22.06.12
✎
11:20
|
(4) Как это поле заполняется? Руками или програмно ?
|
|||
6
bug16
22.06.12
✎
11:23
|
ну изначально это поле было заполнено руками!
|
|||
7
YF
22.06.12
✎
11:28
|
(6) Изначально - это когда?
|
|||
8
viktor_vv
22.06.12
✎
11:29
|
(6) А при повторном отркрытии оно заполнено ? Не очень в курсе российской ТиС, но ищи как работать с механизмом свойств.
|
|||
9
bug16
22.06.12
✎
12:03
|
ну до меня кто то заполнял это поле...не я...
при повторном открытии поле конечно же заполнено |
|||
10
YF
22.06.12
✎
12:27
|
(9) Что значит кто-то заполнил поле до тебя? Содержимое поля живет пока открыта форма, значит открыли форму тоже до тебя?
|
|||
11
bug16
22.06.12
✎
12:59
|
(10) никто не заполняет...один раз записали значение поля, оно и сохранилось... закрываю открываю все на месте...
|
|||
12
mehfk
22.06.12
✎
13:01
|
(11) "...один раз записали значение поля, оно и сохранилось..."
куда сохранилось? |
|||
13
bug16
22.06.12
✎
13:03
|
на форме в поле цвет
|
|||
14
aka AMIGO
22.06.12
✎
13:05
|
значение реквизита формы (но не справочника) вроде при закрытии формы не сохраняется..или я что-то не понимаю.
что не исключено :) |
|||
15
aka AMIGO
22.06.12
✎
13:07
|
(11)значит, это реквизит справочника
|
|||
16
aka AMIGO
22.06.12
✎
13:09
|
+15 или в модуле формы есть функция, вычисляющая значение реквизита диалога
|
|||
17
bug16
22.06.12
✎
13:10
|
идентификатор поля формы допустим "цвет"
в реквизитах справочника, этого реквизита нету... |
|||
18
bug16
22.06.12
✎
13:12
|
(16) буду у базы гляну... ну вроде не было (((
|
|||
19
vova1122
22.06.12
✎
13:13
|
(17) в таком случае этот реквидзит не сохраняется. Или в Програмно прописано что "цвет" сохраняется в другой реквизит справочника.
|
|||
20
viktor_vv
22.06.12
✎
13:14
|
Судя по этому "поле ввода с типом Справочник.ЗначенияСвойств" в ПриОткрытии() заполняют реквизит формы из свойств.
|
|||
21
m-serg74
22.06.12
✎
13:15
|
есть два справочника - "ВидыСвойств" и "ЗначениияСвойств"...
|
|||
22
m-serg74
22.06.12
✎
13:15
|
там все и искать
|
|||
23
m-serg74
22.06.12
✎
13:18
|
а в ТиС еще есть "СвойстваНоменклатуры" справочник
|
|||
24
bug16
22.06.12
✎
13:22
|
(21) (23) извините, опыт небольшой... можете хотя бы кратко обьяснить, как эти справочники связаны с моим "цветом ".. щас не у базы пока глянуть не могу
|
|||
25
aka AMIGO
22.06.12
✎
13:22
|
(17)друже, ты посмотри в конфигураторе в свойствах этого реквизита: какой тип его? может и разяснится вопрос
|
|||
26
ДенисЧ
22.06.12
✎
13:23
|
(24) Вот когда дойдёшь до базы, тогда и думай. А сначала в код глянь...
|
|||
27
bug16
22.06.12
✎
13:24
|
(25) (26) ок. спасиба...
|
|||
28
m-serg74
22.06.12
✎
13:28
|
(24) ну к примеру так:
Процедура ПоКнопкеСвойства() Перем КонтекстФормы; Если Форма.МодальныйРежим() = 0 Тогда Если Выбран() = 0 Тогда Предупреждение("Свойства можно посмотреть только для записанных номенклатурных позиций!", 60); ИначеЕсли ОткрытьФорму("Справочник.СвойстваНоменклатуры", КонтекстФормы) = 1 Тогда КонтекстФормы.ИспользоватьВладельца(ТекущийЭлемент()); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
29
m-serg74
22.06.12
✎
13:31
|
а у тебя при открытии формы вероятно находится в "Справочник.СвойстваНоменклатуры" свойство с "ВидСвойства"="Цвет", и для него получается из Спр.ЗначСвойств - Значение цвета и подставляется в Элемент формы, который ты и наблюдаешь на форме
|
|||
30
m-serg74
22.06.12
✎
13:32
|
правда не пойму для чего ломать работающий механизм, просто этот механизм надо учесть в твоем отчете и все буде гуд...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |