call spQuery_Lista_Tipo_FormaPago(NULL,NULL);

DROP PROCEDURE IF EXISTS spQuery_Lista_Tipo_FormaPago;
CREATE PROCEDURE spQuery_Lista_Tipo_FormaPago(	
	varCodigo int,
  varNombre varchar(10)
)
BEGIN
  DECLARE varCadCod, varCadNom text default '';
  if ifnull(varCodigo,'')<>'' then
    set varCadCod = CONCAT(" and P.id_forma_pago = ", varCodigo, " ");
  end if;
  
  if ifnull(varNombre,'')<>'' then
    set varCadNom = CONCAT(" and P.nombre LIKE '%", varNombre, "%' ");
  end if;
  
  SET @sql = CONCAT("select P.id_forma_pago, P.nombre, P.abrev ",
                    "from _sv_forma_pago P ",
                    "where P._estado = 'A' ",
                    varCadCod, varCadNom,
                    "order by P.id_forma_pago; ");
  PREPARE s1 FROM @sql;
  EXECUTE s1;
  DEALLOCATE PREPARE s1;
END;