CREATE OR ALTER PROCEDURE ULTIMO_COMPROBANTE_SP(
      E_NRO_ALUMNO INTEGER,
      E_FECHA DATE)
RETURNS (
    NRO_COMPROBANTE_CABEZA INTEGER,
    COMPROBANTE VARCHAR(20),
    FECHA DATE,
    NRO_ALUMNO INTEGER)
AS
BEGIN
  FOR
    SELECT
        FIRST 1
        COMPROBANTES_CABEZA.COMPROBANTE,
        COMPROBANTES_CABEZA.NRO_COMPROBANTE_CABEZA,
        COMPROBANTES_CABEZA.FECHA,
        COMPROBANTES_CABEZA.NRO_ALUMNO
      FROM COMPROBANTES_CABEZA
      WHERE
        COMPROBANTES_CABEZA.FECHA >= :E_FECHA AND
        COMPROBANTES_CABEZA.NRO_ALUMNO = :E_NRO_ALUMNO
      ORDER BY
        COMPROBANTES_CABEZA.FECHA ASC  
      INTO
        :COMPROBANTE,
        :NRO_COMPROBANTE_CABEZA,
        :FECHA,
        :NRO_ALUMNO
  DO SUSPEND;
END