Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-09-2004
DR.LECTER DR.LECTER is offline
Registrado
 
Registrado: jun 2004
Posts: 3
Poder: 0
DR.LECTER Va por buen camino
Udf Interbase 7.1

--------------------------------------------------------------------------------

HOLA A TODOS
TENGO ESTE CODIGO ESCRITO EN DELPHI ( CREANDO UNA DLL )


library Project1;
uses
SysUtils,
StrUtils,
Classes;
{$R *.res}
type
tibdate = record
days, frac : integer;
end;

function strzero( var n , t : integer ) : String ; cdecl;export;
var
ceros, entero_char : String;
begin
ceros := '000000000000000000000000000000';
entero_char := Trim( inttostr(n) );
Result := rightstr( ceros + entero_char, t);
end;

end.

Y EL *.DLL RESULTADO SE HA COPIADO EN EL DIRECTORIO DE INTERBASE \UDF\ EN EL SERVIDOR

EN LA BASE DE DATOS CREE UNA UDF DE LA SGTE MANERA

DECLARE EXTERNAL FUNCTION STRZERO_
INTEGER,
INTEGER
RETURNS CSTRING (255) FREE_IT
ENTRY_POINT 'strzero' MODULE_NAME 'project1.dll';

pero cuando escribro este codigo :

select strzero_( fid, 3) as pp from pr_cons
( fid es un campo de la tabla PR_CONS; 3 ES UN PARAMETRO )

AL COMPILAR TENGO ESTE ERROR

fmSQLEditor.Query:
Invalid token.
invalid request BLR at offset 63.
function STRZERO_ is not defined.
module name or entrypoint could not be found.

S.O.S SOCORRRO NECESITO SU AYUDA X FVR........
DE ANTEMANO LES AGRADEZCO.. A TODOS...
P.D. ESTOY CON INTERBASE 7.1
Responder Con Cita
  #2  
Antiguo 03-09-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
En principio, tu función debiera retornar un PChar, y no un String.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 10-02-2006
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Poder: 19
Efren2006 Va por buen camino
Problema con UDF interbase 7.1

Saludos

Tengo exactamente el mismo problema del Dr. Letter con las UDF de Interbase 7.1 , estoy trabajando actualmente con Delphi 6
Responder Con Cita
  #4  
Antiguo 11-02-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Ahora que veo nuevamente el código, veo que le falta la clausula exports a la dll, por ello es que no es visible desde fuera el punto de entrada de la función. Acoto que lo dicho anteriormente sigue siendo válido.
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 12-12-2007
Tal Tal is offline
Miembro
 
Registrado: dic 2007
Posts: 52
Poder: 17
Tal Va por buen camino
Cita:
Ahora que veo nuevamente el código, veo que le falta la clausula exports a la dll, por ello es que no es visible desde fuera el punto de entrada de la función. Acoto que lo dicho anteriormente sigue siendo válido.
Para ser más concreto(a mi es que no me quedó claro)
te falta al final del codigo un trocito para expecificar que funciones se van a exportar:

Código Delphi [-]exports
strzero;


en tu caso.
A mi me faltaba eso y al ponerlo me ha funcionado.
Que sepas que me he tenido que registrar sólo para escribirte esto así que más vale que te funcione

Suerte.
Responder Con Cita
  #6  
Antiguo 12-12-2007
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Hola Tal.

Que bueno que te has registrado.

Lamentablemente, has respondido casí dos años después de la última intervención de este hilo, cuya pregunta original data del 2004!!

Te lo comento porque probablemente el forista interesado ha logrado resolver el problema hace mucho tiempo, aunque el objetivo de los foros es que la información quede aquí para quienes puedan tener el mismo problema en el futuro. Seguramente estos agradecerán tu aportación, por lo que sigue siendo igual de válida.

Dicho esto, solo me resta decirte: ¡Bienvenido al ClubDelphi!

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #7  
Antiguo 10-03-2008
ozegarra ozegarra is offline
Miembro
 
Registrado: nov 2007
Ubicación: Lima - Peru
Posts: 35
Poder: 0
ozegarra Va por buen camino
buenas tardes, yo baje de internet esta libreria "fudlib.dll" con varias funciones.
Las funciones me estuvieron funcionando bien desde la instalacion (hace mas de dos meses) hasta hoy que trate de modificar un store procedure (donde en algun momento hacia referencia a una de las funciones cargadas) y me sale el siguiente error al querer modificar el store.
Código SQL [-]
Invalid token.
Invalid request BLR at offset 65.
Function RIGHTS is not defined.
Module name or entrypoint could not be found.

Ojo que la modificacion que hice en el store no tiene nada que ver con la funcion, es en otra lina de codigo.

Lo raro es que desde mi aplicacion Delphi ejecuto ese store y no sale error, solo al querer modificar el store o ejecutar esa funcion en algun query.

Gracias por la ayuda.

Oscar
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 04:50:18.


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
Copyright 1996-2007 Club Delphi