En mi nuevo trabajo encuentro muy pocas escusas para programar o hacer algo relacionado, pero hoy tuve la oportunidad de ahorrarme una buena cantidad de minutos :)
TenÃa una serie de movimientos bancarios clasificados como DEBE y HABER, el resultado que debia hallas yo era la suma de todos los DEBE menos todos los HABER. El detalle era que la forma en que los tenÃa era una columna donde se especificaba si el monto era Debe(D) o Haber(H) y en otra columna todos los montos con signo positivo, de tal forma que no podÃa simplemente sumarlos.
El programa que se usa no permite usar condicionales para el tipo de operación que necesitaba pero si permite usar expresiones en lugar de columnas, asà que pude distraerme un par de minutos en ahorrarme el paso de crear columnas extras para modificar los signos de los montos.
La fórmula resultante fué:
((ASCII(DEBE_HABER) - 68)*0.5 + 1)*MONTO
Y al sumar el resultado para todos los registros el resultado fue 0 :D
Por suerte recordaba mis códigos ASCII de referencia:)