|   |   | 
| 
 | 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 | 
        правда не пойму для чего ломать работающий механизм, просто этот механизм надо учесть в твоем отчете и все буде гуд...     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |