|
v7: Была ли привязана строка? | ☑ | ||
---|---|---|---|---|
0
Zhuravlik
10.08.12
✎
15:01
|
Здравствуйте. Есть такой метод в модуле проведения документа, как "ПривязыватьСтроку()", а можно как-нибудь узнать использовался этот метод или нет?
|
|||
1
andrewks
10.08.12
✎
15:04
|
посмотреть на заполненность данного реквизит в движении регистра?
|
|||
2
aka AMIGO
10.08.12
✎
15:06
|
включи в конфигураторе поиск по тексту ПривязыватьСтроку()
все модули документов покажутся |
|||
3
aka AMIGO
10.08.12
✎
15:10
|
+2 правильней поиск такой ПривязыватьСтроку без скобок
|
|||
4
Zhuravlik
10.08.12
✎
15:12
|
(1) А если он делает только проводки бух. итогов? Но в отдельных случаях устанавливает значение периодического реквизита справочника... А еще у него огромная таб. часть (более 8000 строк), но хочется при открытии из истории
сразу активизировать строчку с элементом, а искать его в табличной части - долго. Вот и хочется в качестве параметра сразу передавать номер строки документа, по которой было движение. (2) Да нет, я не о том. Скажем есть такая конструкция Док = СоздатьОбъект("Документ.Накладная"); Док.ВыбратьДокументы(дтНач, дтКон); Пока Док.ПолучитьДокумент() = 1 Цикл //А использовался ли здесь метод "ПривязыватьСтроку()"? КонецЦикла; |
|||
5
aka AMIGO
10.08.12
✎
15:15
|
(4)выведи НомерСтроки при выборе движений регистра
|
|||
6
aka AMIGO
10.08.12
✎
15:15
|
+5 если =0 - нет привязки
|
|||
7
aka AMIGO
10.08.12
✎
15:17
|
из самого документа сведений по привязке не получить..
|
|||
8
Zhuravlik
10.08.12
✎
15:56
|
Начал решать одно, решил немного другое, но меня устраивает)))
// В колонке "Документ" отрабатывает открытие документа. Если Значения.ТекущаяКолонка() = "_3" Тогда ЗначениеДокумент = Значения.ПолучитьЗначение(Значения.ТекущаяСтрока(), 1); Если ПустоеЗначение(ЗначениеДокумент) = 0 Тогда флНомерСтроки = 1; Для сч=1 По Метаданные.Документ(ЗначениеДокумент.Вид()).РеквизитТабличнойЧасти() Цикл //Найду идентификатор объекта в табличной части документа (если он есть в таб. части, а не в шапке) ТО_Вид = Метаданные.Документ(ЗначениеДокумент.Вид()).РеквизитТабличнойЧасти(сч).Вид; ТО_ИД = Метаданные.Документ(ЗначениеДокумент.Вид()).РеквизитТабличнойЧасти(сч).Идентификатор; Если ТО_Вид = ТекущийОбъект.Вид() Тогда //Нашел. Теперь проверю движения регистров Для сч=1 По Метаданные.Регистр() Цикл ИД_Регистра = Метаданные.Регистр(сч).Идентификатор; Рег = СоздатьОбъект("Регистр." + ИД_Регистра); Если Рег.ВыбратьДвиженияДокумента(ЗначениеДокумент) = 1 Тогда Для сч=1 По Метаданные.Регистр(ИД_Регистра).Измерение() Цикл ИЗМ_Вид = Метаданные.Регистр(ИД_Регистра).Измерение(сч).Вид; ИЗМ_ИД = Метаданные.Регистр(ИД_Регистра).Измерение(сч).Идентификатор; Если ИЗМ_Вид = ТО_Вид Тогда Рег.УстановитьЗначениеФильтра(ИЗМ_ИД, ТекущийОбъект.ТекущийЭлемент(), 1); поз = СформироватьПозициюДокумента(ЗначениеДокумент); Рег.ВыбратьДвижения(поз,поз); Пока Рег.ПолучитьДвижение() = 1 Цикл Сообщить(Рег.НомерСтроки()); флНомерСтроки = Рег.НомерСтроки(); Перейти ~М1; КонецЦикла; КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; ~М1: ОткрытьФорму(ЗначениеДокумент, флНомерСтроки); Возврат; КонецЕсли; КонецЕсли; При открытии документа прописал, что если Форма.Параметр - это число, то АтивизироватьСтроку(Форма.Параметр); Получилось сделать универсально))) |
|||
9
Zhuravlik
10.08.12
✎
15:57
|
+Обработка.ЗначенияПериодическихРеквизитов
|
|||
10
1Сергей
10.08.12
✎
15:57
|
>>Перейти ~М1;
расстрел на месте без права переписки |
|||
11
Zhuravlik
10.08.12
✎
16:03
|
(10) Вот здесь Теорема Бома — Якопини реалистична? или снова про goto многие положительно отзывались о метках, как о средстве для выхода из кучи вложенных циклов. Вот я и вспомнил)) А что? Чем писать пять проверок, проще набрать одну строчку кода.
|
|||
12
1Сергей
10.08.12
✎
16:06
|
(11) ага, особенно результат голосовалки показателен
|
|||
13
Zhuravlik
10.08.12
✎
16:09
|
(12) Голосовали я так понимаю за принципы, а не частности.
=) А не подскажите, можно ли открыть документ с позиционированием на строке, но без передачи контекста? Т.е. без использования "АктивизироватьСтроку()" в модуле формы, а у объекта спозиционировать и открыть? |
|||
14
1Сергей
10.08.12
✎
16:10
|
(13) нельзя
|
|||
15
КонецЦикла
10.08.12
✎
16:12
|
(8) Ниасилел
Зачем столько кода? Если хотя бы одна строка привязана, то и остальные также (если конфигурацию писал не турок) А открывать документ, активизируя строку... столько кода не нужно |
|||
16
qw12er
10.08.12
✎
16:15
|
(10) 15 лет назад у нас в университете точно за такое расстреливали.
Усыхает земля. (С) Анекдот. |
|||
17
Zhuravlik
10.08.12
✎
16:17
|
(15) Если заранее знать что за документ, и по какому регистру было движение - то да. А я хочу позиционироваться на строку при открытии ЛЮБОГО дока из типовой обработки ЗначенияПериодическихРеквизитов. Но пока если у дока не было движений по регистрам, оон не откроется, буду копать в строну периодики...
(16) Слава богу, что это было 15 лет назад( Почему нельзя в данном конкретном случае? Сейчас 20 эл. прощелкал разных, нигде ничего не глючнуло, не вылетело не сбойнуло, везде строчку поймал, как надо. |
|||
18
Zhuravlik
10.08.12
✎
16:27
|
Загнался... можно было проще в 10 раз...
// В колонке "Документ" отрабатывает открытие документа. Если Значения.ТекущаяКолонка() = "_3" Тогда ЗначениеДокумент = Значения.ПолучитьЗначение(Значения.ТекущаяСтрока(), 1); Если ПустоеЗначение(ЗначениеДокумент) = 0 Тогда флНомерСтроки = 1; Для сч=1 По Метаданные.Документ(ЗначениеДокумент.Вид()).РеквизитТабличнойЧасти() Цикл //Найду идентификатор объекта в табличной части документа (если он есть в таб. части, а не в шапке) ТО_Вид = Метаданные.Документ(ЗначениеДокумент.Вид()).РеквизитТабличнойЧасти(сч).Вид; ТО_ИД = Метаданные.Документ(ЗначениеДокумент.Вид()).РеквизитТабличнойЧасти(сч).Идентификатор; Если ТО_Вид = ТекущийОбъект.Вид() Тогда //Нашел. Теперь проверю движения регистров Периодический = СоздатьОбъект("Периодический"); Периодический.ВыбратьПоДокументу(ЗначениеДокумент); Пока Периодический.ПолучитьЗначение() = 1 Цикл Если Периодический.ТекущийОбъект() = ТекущийОбъект Тогда флНомерСтроки = Периодический.НомерСтроки(); Перейти ~М1; КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; ~М1: ОткрытьФорму(ЗначениеДокумент, флНомерСтроки); Возврат; КонецЕсли; КонецЕсли; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |