08.02.2007, 19:02 | #1 |
Участник
|
Добавление из списка существующих записей
Вопрос следующий: как добится того, чтобы при объединении двух сущностей отношениями, в карточке одной из них была кнопка добавить существующую, а не добавить новую???
|
|
09.02.2007, 08:34 | #2 |
Участник
|
Есть довольно неуклюжий способ, как мне кажется:
Можно попробовать через isv.config Есть элемент Button, его можно повешать на Grid, на Button повешать jscript, который смотрит window.location, если там есть подстрока oId, то кнопка показана из списка связанных сущностей, иначе просто из списка сущностей. Ищем код главного объекта и отправляем его на свою aspx страницу, где показываем список всех сущностей и при выборе определенной указываем ее родителя - наш oId. Проблема в том что кнопка будет показана и в общем списке сущностей, конечно можно сделать чтобы она никак не реагировала. Еще бы как то ее спрятать. Пример навскидку: из карточки организации для связывания счетов В файл isv.config находим секцию invoice и пишем следующее: <Entity name="invoice"> <Grid> <MenuBar> <Buttons> <Button Title="Test" ToolTip="Test link invoice to account" Icon="/_imgs/ico_18_debug.gif" JavaScript="DoVisa(); function DoVisa() { var servurl = new String(window.location); alert(servurl); var ind1= servurl.indexOf('oId'); var oIdLen = 'oId='.length; if(ind1 != -1) { var oId = servurl.substring(ind1+oIdLen , ind1+oIdLen +38); alert(oId); window.open('http://myserver/addon/linkinvoicetoaccount.aspx?oId='+oId); } };" /> </Buttons> </MenuBar> </Grid> </Entity> Конечно это только пример, надо смотреть параметр oType - код сущности, и проверять ее, иначе мы может нажать на ту же кнопку из карточки заказа и попытаться найти клиента с кодом этого заказа. |
|
|
|