 descripciu8c3b3n ejecuta lasu800 acciones adicionales au800 cada operaciu8c3b3n sobre losu800 registros deu800 tabla vidquoten2 mu8c3a1s allu8c3a1 deu800 lau800 acciu8c3b3n enu800 siu800 sobre esos registros dentro delu800 form presupuesto 1u800 insertar 2u800 modificar 3u800 eliminar biblioteca biblioteca biblioteca libr fazzglassmcr composiciu8c3b3n composiciu8c3b3n composiciu8c3b3n cu8c3b3digo subu800 eventobrcdetallepresupuesto oevent asu800 object dimu800 odocument asu800 object dimu800 oform asu800 object dimu800 osubform asu800 object dimu800 osubsubform asu800 object dimu800 osubsubformgrid asu800 object dimu800 sqlstatement asu800 variant dimu800 onombreimpcontrolador asu800 string dimu800 onombreimpformularios asu800 string dimu800 ovidquoteprodid asu800 string dimu800 avidquoteprodid asu800 string dimu800 omensaje asu800 string dimu800 verifica dimu800 strsqlsearch asu800 string dimu800 ocontadorregistros asu800 double 'eventobrcdetallepresupuesto inicio 'mriu800 oevent omensaje omensaje omensaje & rowcount & cstr oeventu82esourceu82erowcount chru800 13u800 omensaje omensaje & rowu800 & cstr oeventu82esourceu82erowu800 chru800 13u800 omensaje omensaje & oeventu82esourceu82eimplementationname chru800 13u800 'msgbox omensaje 'situado enu800 subform productos ifu800 oestadoregistrodetallepresupuesto 0u800 then oform thiscomponentu82edrawpageu82eformsu82egetbyname cabecera osubformagente oformu82egetbyname dataagente osubformgrid oformu82egetbyname productos .getbyname productosgrid onombreimpcontrolador orgu800u82eopenofficeu82ecompu82esvxu800u82eformcontroller onombreimpformularios comu800u82esunu800u82estaru82ecompu82eformsu82eodatabaseform ifu800 oeventu82esourceu82eimplementationname onombreimpformularios then ifu800 oeventu82esourceu82erowcount 0u800 then omensaje first time call inu800 loading omensaje omensaje & oeventu82esourceu82eimplementationname 'msgbox omensaje else 'oeventu82esourceu82erowcount 0u800 just plain cycle ofu800 rowset view ifu800 oeventu82esourceu82erowcount 0u800 then 'read ofu800 current rowset from detallepresupuesto ifu800 oeventu82esourceu82erowu800 0u800 then 'first read ofu800 data 'mriu800 oformu82egetbyname productos .getbyname productosgrid 'itu800 suppose form data wasu800 commited into record ovidquoteid oformu82egetbyname productos .getbyname productosgrid .getbyname fmtvidquoteid .currentvalue ovidquotelpre oformu82egetbyname datacliente .getbyname fmtlistaprecio .currentvalue ovidquotecoefcl oformu82egetbyname datacliente .getbyname fmtcoeficienteac .currentvalue ovidquotecoefac oformu82egetbyname dataagente .getbyname fmtcoeficienteac .currentvalue ovidquoteitem oformu82egetbyname productos .getbyname productosgrid .getbyname fmtvidquoteitem .currentvalue ovidquoteprodid oformu82egetbyname productos .getbyname productosgrid .getbyname txtvidquoteprodid .currentvalue ovidquoteprodcantidad oformu82egetbyname productos .getbyname productosgrid .getbyname fmtvidquoteprodcantidad .currentvalue ovidquoteancho oformu82egetbyname productos .getbyname productosgrid .getbyname fmtvidquoteancho .currentvalue ovidquotealto oformu82egetbyname productos .getbyname productosgrid .getbyname fmtvidquotealto .currentvalue omensaje omensaje omensaje & rowcount & cstr oeventu82esourceu82erowcount chru800 13u800 omensaje omensaje & rowu800 & cstr oeventu82esourceu82erowu800 chru800 13u800 omensaje omensaje & newu800 & cstr oeventu82esourceu82eisnew chru800 13u800 omensaje omensaje & updu800 & cstr oeventu82esourceu82eismodified chru800 13u800 omensaje omensaje & oeventu82esourceu82eimplementationname chru800 13u800 'msgbox omensaje select case oestadoregistrodetallepresupuesto case 1u800 'itu800 isu800 anu800 elements massive insert 'vidquoten3 massive insert 'msgbox bp001 oconnection oeventu82esourceu82eactiveconnection sqlstatement oconnectionu82epreparestatement call altaitempresupuesto sqlstatementu82esetint 1u800 ovidquoteid sqlstatementu82esetint 2u800 ovidquotelpre sqlstatementu82esetint 3u800 ovidquoteitem sqlstatementu82esetstring 4u800 ovidquoteprodid sqlstatementu82esetstring 5u800 ovidquoteprodcantidad sqlstatementu82esetint 6u800 ovidquoteancho sqlstatementu82esetint 7u800 ovidquotealto sqlstatementu82esetdouble 8u800 ovidquotecoefcl ovidquotecoefac sqlstatementu82eexecute sqlstatementu82eclose oformu82egetbyname productos .getbyname componentesdisplay .reload osubtotproducto oformu82egetbyname productos .getbyname componentesdisplay .getbyname subtotalproducto .getbyname fmtsubtotalproducto .currentvalue oformu82egetbyname productos .getbyname productosgrid .getbyname fmtvidquoteprecio .boundfieldu82eupdatedouble osubtotproducto oformu82egetbyname productos .updaterow case 2u800 'itu800 isu800 anu800 product quote data update. complete byu800 trigger 'msgbox bp002 oformu82egetbyname productos .getbyname componentesdisplay .reload ' 'msgbox finu800 ifu800 nu8c2ba4 case 3u800 'complete byu800 trigger endu800 select endu800 ifu800 oestadoregistrodetallepresupuesto 0u800 'msgbox finu800 case endu800 ifu800 'msgbox finu800 ifu800 nu8c2ba3 endu800 ifu800 'msgbox finu800 ifu800 nu8c2ba2 endu800 ifu800 'msgbox eventobrcdetallepresupuesto finu800 endu800 ifu800 endu800 subu800 bitu8c3a1cora bitu8c3a1cora bitu8c3a1cora 20120914 cambio poru800 rediseu8c3b1o form presupuesto subu800 eventobrcdetallepresupuesto oevent asu800 object dimu800 odocument asu800 object dimu800 oform asu800 object dimu800 osubform asu800 object dimu800 osubsubform asu800 object dimu800 osubsubformgrid asu800 object dimu800 sqlstatement asu800 variant dimu800 onombreimpcontrolador asu800 string dimu800 onombreimpformularios asu800 string dimu800 ovidquoteprodid asu800 string dimu800 avidquoteprodid asu800 string dimu800 omensaje asu800 string dimu800 verifica dimu800 strsqlsearch asu800 string dimu800 ocontadorregistros asu800 double 'msgbox eventobrcdetallepresupuesto inicio odocument thiscomponent oform thiscomponentu82edrawpageu82eformsu82egetbyname cabecera osubform oformu82egetbyname cabeceraampliada .getbyname detallepresupuesto osubsubform osubformu82egetbyname detalleproducto osubsubformgrid osubsubformu82egetbyname detalleproductogrid onombreimpcontrolador orgu800u82eopenofficeu82ecompu82esvxu800u82eformcontroller onombreimpformularios comu800u82esunu800u82estaru82ecompu82eformsu82eodatabaseform ifu800 oeventu82esourceu82eimplementationname onombreimpformularios then 'msgbox oeventu82esourceu82eimplementationname onombreimpformularios 'ifu800 oeventu82esourceu82erowu800 0u800 then ifu800 oeventu82esourceu82erowcount 0u800 then omensaje first time call inu800 loading omensaje omensaje & oeventu82esourceu82eimplementationname 'msgbox omensaje else 'msgbox oeventu82esourceu82erowcount 0u800 ifu800 oeventu82esourceu82erowcount 0u800 then 'read ofu800 current rowset from detallepresupuesto ifu800 oeventu82esourceu82erowu800 0u800 then 'first read ofu800 data 'mriu800 osubform ovidquoteid osubformu82ecolumnsu82egetbyname vidquoteid .getint ovidquotelpre osubformu82ecolumnsu82egetbyname vidquotelpre .getint ovidquoteitem osubformu82ecolumnsu82egetbyname vidquoteitem .getint ovidquoteprodid osubformu82ecolumnsu82egetbyname vidquoteprodid .getstring ovidquoteprodcantidad osubformu82ecolumnsu82egetbyname vidquoteprodcantidad .getint ovidquoteancho osubformu82ecolumnsu82egetbyname vidquoteancho .getint ovidquotealto osubformu82ecolumnsu82egetbyname vidquotealto .getint select case oestadoregistrodetallepresupuesto case 1u800 'itu800 isu800 anu800 elements massive insert 'vidquoten3 massive insert 'msgbox bp001 oconnection oeventu82esourceu82eactiveconnection sqlstatement oconnectionu82epreparestatement call altaitempresupuesto sqlstatementu82esetint 1u800 ovidquoteid sqlstatementu82esetint 2u800 ovidquotelpre sqlstatementu82esetint 3u800 ovidquoteitem sqlstatementu82esetstring 4u800 ovidquoteprodid sqlstatementu82esetstring 5u800 ovidquoteprodcantidad sqlstatementu82esetint 6u800 ovidquoteancho sqlstatementu82esetint 7u800 ovidquotealto sqlstatementu82eexecute sqlstatementu82eclose 'vidquoten4 massive insert omensaje omensaje omensaje & bp002 omensaje omensaje & presupuesto & cstr ovidquoteid & chru800 13u800 omensaje omensaje & item & cstr ovidquoteitem & chru800 13u800 omensaje omensaje & producto & ovidquoteprodid & chru800 13u800 omensaje omensaje & elemento & 12345678 & chru800 13u800 'msgbox omensaje sqlstatement oconnectionu82epreparestatement call altaparamitempresupuesto sqlstatementu82esetint 1u800 ovidquoteid sqlstatementu82esetint 2u800 ovidquoteitem sqlstatementu82esetstring 3u800 ovidquoteprodid sqlstatementu82esetstring 4u800 12345678 'setu800 pcondicion foru800 procedure inheritance depending onu800 previous remu800 sqlstatementu82esetint 5u800 2u800 ' sqlstatementu82eexecute 'msgbox bp003 sqlstatementu82eclose case 2u800 'itu800 isu800 anu800 product quote data update strsqlsearch select count from vidquoten3 where strsqlsearch strsqlsearch & vidquoteid & cstr ovidquoteid strsqlsearch strsqlsearch & andu800 strsqlsearch strsqlsearch & vidquoteitem & cstr ovidquoteitem oconnection oeventu82esourceu82eactiveconnection sqlstatement oconnectionu82ecreatestatement verifica sqlstatementu82eexecutequery strsqlsearch verificau82enext 'leeu800 lau800 primera lu8c3adnea delu800 query ocontadorregistros verificau82egetdouble 1u800 'valor anterior sqlstatementu82eclose ifu800 ocontadorregistros 0u800 then strsqlsearch select vidquoteprodid from vidquoten3 where strsqlsearch strsqlsearch & vidquoteid & cstr ovidquoteid strsqlsearch strsqlsearch & andu800 strsqlsearch strsqlsearch & vidquoteitem & cstr ovidquoteitem strsqlsearch strsqlsearch & group byu800 vidquoteid vidquoteitem oconnection oeventu82esourceu82eactiveconnection sqlstatement oconnectionu82ecreatestatement verifica sqlstatementu82eexecutequery strsqlsearch verificau82enext 'leeu800 lau800 primera lu8c3adnea delu800 query avidquoteprodid verificau82egetstring 1u800 'valor anterior sqlstatementu82eclose ifu800 avidquoteprodid ovidquoteprodid then 'check ifu800 theu800 same product code 'delete previous records dueu800 tou800 change product code strsqlsearch delete from vidquoten3 where strsqlsearch strsqlsearch & vidquoteid & cstr ovidquoteid strsqlsearch strsqlsearch & andu800 strsqlsearch strsqlsearch & vidquoteitem & cstr ovidquoteitem oconnection oeventu82esourceu82eactiveconnection sqlstatement oconnectionu82ecreatestatement sqlstatementu82eexecuteupdate strsqlsearch sqlstatementu82eclose 'insert newu800 records -elements- with newu800 quote product code oconnection oeventu82esourceu82eactiveconnection sqlstatement oconnectionu82epreparestatement call altaitempresupuesto sqlstatementu82esetint 1u800 ovidquoteid sqlstatementu82esetint 2u800 ovidquotelpre sqlstatementu82esetint 3u800 ovidquoteitem sqlstatementu82esetstring 4u800 ovidquoteprodid sqlstatementu82esetstring 5u800 ovidquoteprodcantidad sqlstatementu82esetint 6u800 ovidquoteancho sqlstatementu82esetint 7u800 ovidquotealto sqlstatementu82eexecute sqlstatementu82eclose 'vidquoten4 massive insert with newu800 quote product code sqlstatement oconnectionu82epreparestatement call altaparamitempresupuesto sqlstatementu82esetint 1u800 ovidquoteid sqlstatementu82esetint 2u800 ovidquoteitem sqlstatementu82esetstring 3u800 ovidquoteprodid sqlstatementu82esetstring 4u800 12345678 sqlstatementu82esetint 5u800 2u800 sqlstatementu82eexecute sqlstatementu82eclose else 'itu800 isu800 theu800 same product code. update vidquoten3 columns except product code 'strsqlsearch 'strsqlsearch strsqlsearch & update vidquoten3 asu800 t3u800 setu800 'strsqlsearch strsqlsearch & t3u800u82evidquoteprodcantidad & cstr ovidquoteprodcantidad & 'strsqlsearch strsqlsearch & t3u800u82evidquoteancho & cstr ovidquoteancho & 'strsqlsearch strsqlsearch & t3u800u82evidquotealto & cstr ovidquotealto & 'strsqlsearch strsqlsearch & t3u800u82evidquoteprecio calculapreciobase t3u800u82evidquoteprodid t3u800u82evidquoteelementoid &cstr ovidquoteancho & &cstr ovidquotealto & t3u800u82evidquotelpre 'strsqlsearch strsqlsearch & t3u800u82evidquotepreciop calculapreciobase t3u800u82evidquoteprodid t3u800u82evidquoteelementoid &cstr ovidquoteancho & &cstr ovidquotealto & t3u800u82evidquotelpre &cstr ovidquoteprodcantidad 'strsqlsearch strsqlsearch & where 'strsqlsearch strsqlsearch & vidquoteid & cstr ovidquoteid 'strsqlsearch strsqlsearch & andu800 'strsqlsearch strsqlsearch & vidquoteitem & cstr ovidquoteitem oconnection oeventu82esourceu82eactiveconnection sqlstatement oconnectionu82ecreatestatement sqlstatement oconnectionu82epreparestatement call actualizapreciosproductoproposal sqlstatementu82esetint 1u800 ovidquoteid sqlstatementu82esetint 2u800 ovidquotelpre sqlstatementu82esetint 3u800 ovidquoteitem sqlstatementu82esetstring 4u800 ovidquoteprodid sqlstatementu82esetint 5u800 ovidquoteprodcantidad sqlstatementu82esetint 6u800 ovidquoteancho sqlstatementu82esetint 7u800 ovidquotealto sqlstatementu82eexecute 'sqlstatementu82eexecuteupdate strsqlsearch sqlstatementu82eclose endu800 ifu800 msgbox recuerde revisar actualizar valores adicionales endu800 ifu800 'msgbox finu800 ifu800 nu8c2ba4 case 3u800 'msgbox elimina . design andu800 complete makingup byu800 triggertiger endu800 select endu800 ifu800 oestadoregistrodetallepresupuesto 0u800 'msgbox finu800 case endu800 ifu800 'msgbox finu800 ifu800 nu8c2ba3 endu800 ifu800 'msgbox finu800 ifu800 nu8c2ba2 endu800 ifu800 'msgbox eventobrcdetallepresupuesto finu800 endu800 subu800 usou800 usou800 usou800 form presupuesto 