21.07.2019, 05:55 | #1 |
Участник
|
Паттерн initFrom() на таблице
Друзья, снова может быть ерундой занимаюсь, но все же прошу оценить. Суть паттерна в том, чтобы использовать один единственный метод для инициализации, остальные методы initFrom*() сделать private. С точки зрения пользователя кода это позволит сделать код немного чище и сосредоточиться на задаче не выискивая нужный метод в выпадающем списке. Сами делаем только на кастомных таблицах, используем весьма успешно.
X++: public void initFrom(Common _common) { switch (_common.TableId) { case tableNum(SalesLine): this.initFromSalesLine(_common); break; case tableNum(SalesTable): this.initFromSalesTable(_common); break; case tableNum(InventTable): this.initFromInventTable(_common); break; case tableNum(EcoResProduct): this.initFromEcoResProduct(_common); break; case tableNum(WMSBillOfLading): this.initFromWMSBillOfLading(_common); break; default: throw error(Error::wrongUseOfFunction(funcName())); } }
__________________
// no comments |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|