 category proc descripcion descripcion descripcion unau800 vezu800 queu800 ingresa losu800 datos bu8c3a1sicos deu800 unu800 producto verifica queu800 este producto tenga alguna composicion solo losu800 elementos bu8c3a1sicos . siu800 lau800 tiene divide elu800 proceso enu800 2u800 partes #uneu800 2u800 grupos deu800 datos dentro delu800 mismo subconjunto ##todos losu800 productos-elementos deu800 lau800 vista visprodadic cuyo codigo deu800 producto seau800 igual alu800 cu8c3b3digo deu800 producto madre yu800 queu800 seau800 propiamente dichos cuyo cu8c3b3digo deu800 producto seau800 igual alu800 cu8c3b3digo deu800 elemento ##todos losu800 productos-elementos deu800 lau800 vista visprodadic cuyo codigo deu800 producto seau800 igual alu800 cu8c3b3digo deu800 producto madre yu800 elu800 cu8c3b3digo deu800 producto seau800 diferente alu800 codigo deu800 elemento. ###incluye todos losu800 productos-elementos deu800 unu800 nivel inferior. esto seu800 realiza seleccionando losu800 elementos deu800 lau800 composicion como siu800 fuesen productos yu800 esos productos sonu800 lau800 clave deu800 bu8c3basqueda dentro deu800 lau800 misma tabla deu800 composiciu8c3b3n.  20120917  unau800 vezu800 queu800 ingresa losu800 datos bu8c3a1sicos deu800 unu800 producto inserta enu800 tabla vidquoten3 losu800 componentes delu800 producto seu8c3b1alado solo losu800 elementos bu8c3a1sicos . divide elu800 proceso enu800 2u800 partes #uneu800 2u800 grupos deu800 datos dentro delu800 mismo subconjunto ##todos losu800 productos-elementos deu800 tabla componentes tabla productos yu800 tabla precios cuyo codigo deu800 producto seau800 igual alu800 cu8c3b3digo deu800 producto madre yu800 queu800 seau800 propiamente dichos cuyo cu8c3b3digo deu800 producto seau800 igual alu800 cu8c3b3digo deu800 elemento ##todos losu800 productos-elementos deu800 deu800 tabla componentes tabla productos yu800 tabla precios cuyo codigo deu800 producto seau800 igual alu800 cu8c3b3digo deu800 producto madre yu800 elu800 cu8c3b3digo deu800 producto seau800 diferente alu800 codigo deu800 elemento. ###incluye todos losu800 productos-elementos deu800 unu800 nivel inferior. esto seu800 realiza seleccionando losu800 elementos deu800 lau800 composicion como siu800 fuesen productos yu800 esos productos sonu800 lau800 clave deu800 bu8c3basqueda dentro deu800 lau800 misma tabla deu800 composiciu8c3b3n. composicion composicion composicion vista visproadic - tabla productos - tabla precios - tabla componentes - - tabla vidquoten3 sqlu800 sqlu800 sqlu800 drop procedure altaitempresupuesto ; delimiter create definer sas_admin procedure altaitempresupuesto inu800 pvidquoteid intu800 5u800 inu800 pvidquotelpre intu800 1u800 inu800 pvidquoteitem intu800 5u800 inu800 pvidquoteprodid char 8u800 inu800 pvidquoteprodcantidad intu800 5u800 inu800 pvidquoteancho intu800 5u800 inu800 pvidquotealto intu800 5u800 inu800 pcoeficientemu decimal 5u800 2u800 begin -- -------------------------------------------------------------------------------- -- inserta registraciones pausibles deu800 incorporar deu800 acuerdo alu800 tipo deu800 -- -------------------------------------------------------------------------------- call debugcheckpoint concat cast pvidquoteid asu800 char - cast pvidquotelpre asu800 char - cast pvidquoteitem asu800 char - pvidquoteprodid - cast pvidquoteprodcantidad asu800 char - cast pvidquoteancho asu800 char - cast pvidquotealto asu800 char - cast pcoeficientemu asu800 char ; insert into vidquoten3 vidquoteid vidquoteitem vidquoteprodid vidquoteprodcantidad vidquoteelementoid vidquotecomposicid vidquoteelementopm vidquoteprecio vidquotepreciop select pvidquoteid asu800 vidquoteid pvidquoteitem asu800 vidquoteitem r1u800u82eproductoid asu800 vidquoteprodid pvidquoteprodcantidad asu800 vidquoteprodcantidad r1u800u82eprodcmpid asu800 vidquoteelementoid r1u800u82ecomposicid asu800 vidquotecomposicid r1u800u82eelementopm asu800 vidquoteelementopm sumu800 calculoprecio pvidquoteancho pvidquotealto r1u800 . precioprod r1u800 . magnitud r1u800 . offsetvanoalto r1u800 . offsetvanoancho r1u800 . coefvanoalto r1u800 . coefvanoancho r1u800 . valorelemento pcoeficientemu asu800 vidquoteprecio sumu800 calculoprecio pvidquoteancho pvidquotealto r1u800 . precioprod r1u800 . magnitud r1u800 . offsetvanoalto r1u800 . offsetvanoancho r1u800 . coefvanoalto r1u800 . coefvanoancho r1u800 . valorelemento pvidquoteprodcantidad pcoeficientemu asu800 vidquotepreciop from -- -------------------------------------------------------------------------------- -- selecciona elementos deu800 composicion iguales alu800 producto -- -------------------------------------------------------------------------------- select u1u800u82eproductoid u1u800u82eelementoid asu800 prodcmpid u1u800u82ecomposicid u1u800u82eelementoid u1u800u82eelementopm u2u800u82emagnitud u1u800u82evalorelemento u1u800u82eoffsetvanoancho u1u800u82eoffsetvanoalto u1u800u82ecoefvanoancho u1u800u82ecoefvanoalto case pvidquotelpre when 0u800 then u3u800u82eprecioprod00 when 1u800 then u3u800u82eprecioprod01 when 2u800 then u3u800u82eprecioprod02 when 3u800 then u3u800u82eprecioprod03 endu800 asu800 precioprod from fzggestionu82eproductos asu800 u2u800 fzggestionu82ecomposicion asu800 u1u800 fzggestionu82eprecios asu800 u3u800 where u2u800u82eproductoid u1u800u82eelementoid andu800 u3u800u82eproductoid u2u800u82eproductoid andu800 u1u800u82eproductoid pvidquoteprodid andu800 u1u800u82eelementoid pvidquoteprodid andu800 u1u800u82eelementopm 0u800 -- -------------------------------------------------------------------------------- union -- -------------------------------------------------------------------------------- -- selecciona elementos deu800 composicion diferentes alu800 producto -- -------------------------------------------------------------------------------- select t1u800u82eproductoid t1u800u82eelementoid asu800 prodcmpid t1u800u82ecomposicid t2u800u82eelementoid t1u800u82eelementopm t3u800u82emagnitud t1u800u82evalorelemento t2u800u82evalorelemento asu800 valorelemento t1u800u82eoffsetvanoancho t2u800u82eoffsetvanoancho asu800 offsetvanoancho t1u800u82eoffsetvanoalto t2u800u82eoffsetvanoalto asu800 offsetvanoalto t1u800u82ecoefvanoancho t2u800u82ecoefvanoancho asu800 coefvanoancho t1u800u82ecoefvanoalto t2u800u82ecoefvanoalto asu800 coefvanoalto case pvidquotelpre when 0u800 then t4u800 . precioprod00 when 1u800 then t4u800 . precioprod01 when 2u800 then t4u800 . precioprod02 when 3u800 then t4u800 . precioprod03 endu800 asu800 precioprod from fzggestionu82ecomposicion asu800 t2u800 fzggestionu82ecomposicion asu800 t1u800 fzggestionu82eproductos asu800 t3u800 fzggestionu82eprecios asu800 t4u800 where t2u800u82eproductoid t1u800u82eelementoid andu800 t3u800u82eproductoid t2u800u82eelementoid andu800 t4u800u82eproductoid t3u800u82eproductoid andu800 t1u800u82eproductoid t1u800u82eelementoid andu800 t2u800u82eelementopm 0u800 andu800 t1u800u82eproductoid pvidquoteprodid andu800 t1u800u82eelementopm 0u800 order byu800 t1u800u82eproductoid ascu800 t1u800u82eelementoid ascu800 t1u800u82ecomposicid ascu800 t2u800u82eelementoid ascu800 -- -------------------------------------------------------------------------------- -- r1u800 esu800 elu800 sinu8c3b3nimo deu800 lau800 union deu800 lasu800 tablas -- -------------------------------------------------------------------------------- asu800 r1u800 group byu800 vidquoteelementoid vidquotecomposicid; endu800 bitu8c3a1cora bitu8c3a1cora bitu8c3a1cora 20120419 cambio deu800 esquema para colocar elu800 cu8c3a1lculo deu800 subitems. 20120917 cambio deu800 diseu8c3b1o form presupuesto delimiter create procedure altaitempresupuesto inu800 pvidquoteid intu800 5u800 inu800 pvidquotelpre intu800 1u800 inu800 pvidquoteitem intu800 5u800 inu800 pvidquoteprodid char 8u800 inu800 pvidquoteprodcantidad intu800 5u800 inu800 pvidquoteancho intu800 5u800 inu800 pvidquotealto intu800 5u800 begin insert into vidquoten3 vidquoteid vidquotelpre vidquoteitem vidquoteprodid vidquoteprodcantidad vidquoteancho vidquotealto vidquoteelementoid vidquoteprecio vidquotepreciop select pvidquoteid pvidquotelpre pvidquoteitem pvidquoteprodid pvidquoteprodcantidad pvidquoteancho pvidquotealto t3u800 . prodcmpid sumu800 calculoprecio pvidquoteancho pvidquotealto t3u800 . precioprod t3u800 . magnitud t3u800 . offsetvanoalto t3u800 . offsetvanoancho t3u800 . coefvanoalto t3u800 . coefvanoancho t3u800 . valorelemento asu800 pvidquoteprecio sumu800 calculoprecio pvidquoteancho pvidquotealto t3u800 . precioprod t3u800 . magnitud t3u800 . offsetvanoalto t3u800 . offsetvanoancho t3u800 . coefvanoalto t3u800 . coefvanoancho t3u800 . valorelemento pvidquoteprodcantidad asu800 pvidquotepreciop from select t1u800 . productoid asu800 productoid t1u800 . productoid asu800 prodcmpid t1u800 . elementoid t1u800 . valorelemento t1u800 . descripcion t1u800 . magnitud t1u800 . offsetvanoancho t1u800 . offsetvanoalto t1u800 . coefvanoancho t1u800 . coefvanoalto case pvidquotelpre when 0u800 then t1u800 . precioprod00 when 1u800 then t1u800 . precioprod01 when 2u800 then t1u800 . precioprod02 when 3u800 then t1u800 . precioprod03 endu800 asu800 precioprod from visprodadic asu800 t1u800 where productoid pvidquoteprodid andu800 elementoid pvidquoteprodid andu800 elementopm 1u800 union select pvidquoteprodid asu800 productoid t2u800 . productoid asu800 prodcmpid t2u800 . elementoid t2u800 . valorelemento t2u800 . descripcion t2u800 . magnitud t2u800 . offsetvanoancho t2u800 . offsetvanoalto t2u800 . coefvanoancho t2u800 . coefvanoalto case pvidquotelpre when 0u800 then t2u800 . precioprod00 when 1u800 then t2u800 . precioprod01 when 2u800 then t2u800 . precioprod02 when 3u800 then t2u800 . precioprod03 endu800 asu800 precioprod from visprodadic asu800 t2u800 where productoid inu800 select elementoid from visprodadic where productoid pvidquoteprodid andu800 elementoid pvidquoteprodid andu800 elementopm 1u800 asu800 t3u800 group byu800 prodcmpid; endu800; 20121208 seu800 detecta errores enu800 elu800 cu8c3a1lculo combinado poru800 lau800 falta deu800 propagaciu8c3b3n deu800 atributos deu800 componentes conu800 niveles adicionales deu800 composiciu8c3b3n dvhu800 etcu800 . anterior -- -------------------------------------------------------------------------------- -- routine ddlu800 -- note comments before andu800 after theu800 routine body will notu800 beu800 stored byu800 theu800 server -- -------------------------------------------------------------------------------- delimiter create definer sas_admin procedure altaitempresupuesto inu800 pvidquoteid intu800 5u800 inu800 pvidquotelpre intu800 1u800 inu800 pvidquoteitem intu800 5u800 inu800 pvidquoteprodid char 8u800 inu800 pvidquoteprodcantidad intu800 5u800 inu800 pvidquoteancho intu800 5u800 inu800 pvidquotealto intu800 5u800 inu800 pcoeficientemu decimal 5u800 2u800 begin -- -------------------------------------------------------------------------------- -- inserta registraciones pausibles deu800 incorporar deu800 acuerdo alu800 tipo deu800 -- -------------------------------------------------------------------------------- insert into vidquoten3 vidquoteid vidquoteitem vidquoteprodid vidquoteprodcantidad vidquoteelementoid vidquotecomposicid vidquoteelementopm vidquoteprecio vidquotepreciop select pvidquoteid asu800 vidquoteid pvidquoteitem asu800 vidquoteitem r1u800u82eproductoid asu800 vidquoteprodid pvidquoteprodcantidad asu800 vidquoteprodcantidad r1u800u82eprodcmpid asu800 vidquoteelementoid r1u800u82ecomposicid asu800 vidquotecomposicid r1u800u82eelementopm asu800 vidquoteelementopm sumu800 calculoprecio pvidquoteancho pvidquotealto r1u800 . precioprod r1u800 . magnitud r1u800 . offsetvanoalto r1u800 . offsetvanoancho r1u800 . coefvanoalto r1u800 . coefvanoancho r1u800 . valorelemento pcoeficientemu asu800 vidquoteprecio sumu800 calculoprecio pvidquoteancho pvidquotealto r1u800 . precioprod r1u800 . magnitud r1u800 . offsetvanoalto r1u800 . offsetvanoancho r1u800 . coefvanoalto r1u800 . coefvanoancho r1u800 . valorelemento pvidquoteprodcantidad pcoeficientemu asu800 vidquotepreciop from -- -------------------------------------------------------------------------------- -- selecciona elementos deu800 composicion iguales alu800 producto -- -------------------------------------------------------------------------------- select u1u800u82eproductoid u1u800u82eelementoid asu800 prodcmpid u1u800u82ecomposicid u1u800u82eelementoid u1u800u82eelementopm u2u800u82emagnitud u1u800u82evalorelemento u1u800u82eoffsetvanoancho u1u800u82eoffsetvanoalto u1u800u82ecoefvanoancho u1u800u82ecoefvanoalto case 2u800 when 0u800 then u3u800u82eprecioprod00 when 1u800 then u3u800u82eprecioprod01 when 2u800 then u3u800u82eprecioprod02 when 3u800 then u3u800u82eprecioprod03 endu800 asu800 precioprod from fzggestionu82eproductos asu800 u2u800 fzggestionu82ecomposicion asu800 u1u800 fzggestionu82eprecios asu800 u3u800 where u2u800u82eproductoid u1u800u82eelementoid andu800 u3u800u82eproductoid u2u800u82eproductoid andu800 u1u800u82eproductoid pvidquoteprodid andu800 u1u800u82eelementoid pvidquoteprodid andu800 u1u800u82eelementopm 0u800 -- -------------------------------------------------------------------------------- union -- -------------------------------------------------------------------------------- -- selecciona elementos deu800 composicion diferentes alu800 producto -- -------------------------------------------------------------------------------- select t1u800u82eproductoid t1u800u82eelementoid asu800 prodcmpid t1u800u82ecomposicid t2u800u82eelementoid t1u800u82eelementopm t3u800u82emagnitud t1u800u82evalorelemento t1u800u82eoffsetvanoancho t1u800u82eoffsetvanoalto t1u800u82ecoefvanoancho t1u800u82ecoefvanoalto case 2u800 when 0u800 then t4u800 . precioprod00 when 1u800 then t4u800 . precioprod01 when 2u800 then t4u800 . precioprod02 when 3u800 then t4u800 . precioprod03 endu800 asu800 precioprod from fzggestionu82ecomposicion asu800 t2u800 fzggestionu82ecomposicion asu800 t1u800 fzggestionu82eproductos asu800 t3u800 fzggestionu82eprecios asu800 t4u800 where t2u800u82eproductoid t1u800u82eelementoid andu800 t3u800u82eproductoid t2u800u82eelementoid andu800 t4u800u82eproductoid t3u800u82eproductoid andu800 t1u800u82eproductoid t1u800u82eelementoid andu800 t2u800u82eelementopm 0u800 andu800 t1u800u82eproductoid pvidquoteprodid andu800 t1u800u82eelementopm 0u800 order byu800 t1u800u82eproductoid ascu800 t1u800u82eelementoid ascu800 t1u800u82ecomposicid ascu800 t2u800u82eelementoid ascu800 -- -------------------------------------------------------------------------------- -- r1u800 esu800 elu800 sinu8c3b3nimo deu800 lau800 union deu800 lasu800 tablas -- -------------------------------------------------------------------------------- asu800 r1u800 group byu800 vidquoteelementoid vidquotecomposicid; endu800 usou800 usou800 usou800 macro eventobrcdetallepresupuesto urlu800 urlu800 urlu800 fzgu800u82eprocedureu82ealtaitempresupuestou82esqlu800 