Power Builder - hacer tarifa de agua potable

 
Vista:

hacer tarifa de agua potable

Publicado por Francisco (97 intervenciones) el 21/03/2013 05:04:21
hola colega espero que esten todos bien hartas vendiciones, tengo el sigte. problema no se como puedo construir una tarifa de agua potable..

tengo una tabla con valores ej:

tabla_variable

rango_aguadesde rango_agua_hasta valor_agua incremento
0 10 3600 0
11 100 370 10
101 9999 9999 0



debo generar una tabla_tarifa_agua, asi

consumo valor_m3_agua
0 3600
1 3600
2 3600
3 3600

10 3600
hasta 10 se mantiene el valor 3600

desde el rango_agua_desde 11 a rango_agua_hasta 100
se debe insertar lo siguiente :

- sebe sumar el valor_m3_agua del consumo 10 ( 3600 ) mas valor_agua 370 mas incremento de 10

algo asi debe salir
consumo valor_m3_agua
11 2980

luego en consumo 12 se debe seguir sumando y incrementado, hasta , rango_agua_hasta=100
en consumo 12 debe salir algo asi

consumo valor_m3_agua
12 4370


nota: el incremento de 370 se debe sumarle 10 hasta llegar al rango_agua_hasta 100


no se como hacer con un for o otro proceso

porfa me pueden ayudar

muchas gracias


francisco


desde Chile...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 37
Ha mantenido su posición en Power Builder (en relación al último mes)
Gráfica de Power Builder

hacer tarifa de agua potable

Publicado por JeinnerH (646 intervenciones) el 26/03/2013 17:29:36
Hola Francisco. Lo que debes hace es crear un Datawindow con la consulta a la tabla de valores. En el código haces el retrieve de la tabla y luego hace algo como:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
dw_valores.Retrieve()
For li_1=1 to dw_valores.RowCount()
  ldc_desde=dw_valores.Object.Desde[li_1]
  ldc_hasta=dw_valores.Object.Hasta[li_1]
 
  ldc_Consumo=ldc_Hasta - ldc_Desde
 
  // Algo así. Luego haces los cálculos necesarios y haces el Insert del cobro.
 
  Insert Into Tabla_Cobros
            (Fecha_Corte, Cliente, Monto_Cobrar)
   Values (:ldt_Fecha_Corte, :ls_Cod_Cliente, :ldc_Monto_Cobrar);
Next
COMMIT;


La complejidad de la lógica ya corre por tu cuenta, esto es un ejemplo.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar