steban писал(а) 18. Августа 2006 :: 17:10:Мне больше нравится 1-й вариант.
только может сделать после вызова метода КОП метода ГК (если он есть).
Не совсем понял, о чем ты говоришь
После вызова метода КОП нужно вызывать метод ГК? Это необязательно.
ИМХО наиболее гибкий вариант - когда КОП сам определяет, в какой момент вызывать "родной" метод ГК и вызывать ли его вообще.Но здесь возникает вопрос наследования в следующих подклассах -
например, вполне возможна иерархия КОПДокНакладная - КОПДок - КОПФорма - ГрупповойКонтекст
Если использовать метод 1, в любом случае будет сначала будет вызываться метод из верхнего класса КОПДокНакладная, а уже затем нужно будет вызывать КОПДок.НужныйМетод и т.д.
Т.е. нужно предусмотреть возможность такой сложной иерархии, а не только простой связки КОПДокНакладная - ГрупповойКонтекст.
ЗЫ хотя вроде бы также не должно быть слишком сложно.
Мне лично также нравится 1 вариант.Но есть еще один подводный камень - для обоих вариантов возможна довольно неприятная ситуация при использовании типовых конфигураций.
В глоб. методе ПослеОткрытия(Конт) от формы дока наследуется объект КОПДок, все это происходит незаметно для формы документа и может быть запрятано далеко в классах. Далее все вызовы идут через КОП, т.е. фактически весь функционал реализован именно там.
Далее производится обновление типовой конфы, и, например, меняется функционал типовой формы документа, но глоб. метод ПослеОткрытия не меняется, функционала КОП-а также не меняется (например, вполне можно об этом забыть!)
Вуаля, конфигурация новая, а функционал формы дока старый. И ошибку можно искать довольно долго, если не знать об этой особенности 1С++
Лично я готов с этим мириться, мне и нужен сабжевый функционал, чтобы легче было обновлять типовые конфы.