Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Oracle (https://www.clubdelphi.com/foros/forumdisplay.php?f=22)
-   -   recorrer datos en oracle (https://www.clubdelphi.com/foros/showthread.php?t=91945)

GustavoCruz 08-06-2017 00:00:32

recorrer datos en oracle
 
Hola amigos foreros en firebird puedo hacer esta instrucción
Código SQL [-]
for select i.itecups, i.itesoat from hgstable h, itetable i, afttable a
    where i.itecups = h.hgscups and a.aftripsfactura = h.hgsrips and
    a.aftcuenta = :cuenta group by i.itecups, i.itesoat into :cups, :soat do
    begin
      if (upper(tipo) = 'SOAT') then
        begin
        select first 1 :uvr * p.premultiplo from pretable p
          where p.precodigo = :soat and p.codmanual = -1 into :valor_u;
        end
      else
        begin
        select first 1 :uvr * p.premultiplo from pretable p
          where p.precodigo = :cups and p.codmanual = -1 into :valor_u;
        end
      update hgstable g set g.hgsunitario = :valor_u, g.hgstotal =
      :valor_u * g.hgscantidad, g.hgstru_val = :trun_val where g.hgscups = :cups;
    end

como se hace en oracle el
Código SQL [-]
for select i.itecups, i.itesoat from hgstable h, itetable i, afttable a
    where i.itecups = h.hgscups and a.aftripsfactura = h.hgsrips and
    a.aftcuenta = :cuenta group by i.itecups, i.itesoat into :cups, :soat do

Gracias por su Tiempo

jhonny 08-06-2017 00:13:22

Una manera sería usando Cursores como indican acá https://elbauldelprogramador.com/plsql-cursores/

GustavoCruz 08-06-2017 02:37:20

Gracias jhonny, practico y te cuento a ver cómo me va

mamcx 08-06-2017 02:42:57

Es muy probable que puedas hacer eso con una consulta directa (en especial si el oracle es algo reciente).

Es esclarecedor estudiar lo mucho que ha progresado SQL desde 1992:

http://modern-sql.com/

Ayudaria mucho ver las tablas con datos y como deberian verse los resultados.

GustavoCruz 08-06-2017 17:56:16

Hola mamcx,

sucede que es un procedimiento que debe cambiar, si es necesario, los valores que se cobran por la prestación de servicios de salud; y para ello se tiene en cuenta valores tarifarios y acuerdos que se haya tenido con los mismos, por ejemplo:

Supongase que un paciente ingresa una sala de urgencias por un golpe en hombro, a ese paciente se realiza un RX para verificar y hay factura o luxación o cualquier cosa.

Ese servicio se debe cobra a una Empresa Promotora de Salud.
El facturador puede cometer un error y en vez de cobrar con el manual tarifario A cobró con el B, y ahí la necesidad de hacer el cambio.

También le quiero decir que pode solucionar el inconveniente

Gracias por sus aportes seguiré preguntando


Gustavo Cruz


La franja horaria es GMT +2. Ahora son las 14:16:19.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi