Fórum Criar UDFs - ajuda #415673
20/04/2012
0
Estou criando uma dll com funcoes para usar no firebird (UDF).
Estou utilizando o c# dot.net para criar a dll.
Dll: UDFFireBird.dll
Segue abaixo:
using System;
using System.Collections.Generic;
using System.Text;
namespace UDFFireBird
{
public static class FireBird
{
public static string StrZero(int wvar, int wtam)
{
string wtmp = wvar.ToString();
for (int i = 0; i < wtam - wvar.ToString().Length; i++)
{
wtmp = 0 + wtmp;
}
return wtmp;
}
public static string Replicate(string wchar, int wtam)
{
string wtmp = ;
for (int i = 0; i < wtam; i++)
{
wtmp = wtmp + wchar;
}
return wtmp;
}
}
}
DECLARE EXTERNAL FUNCTION StrZero
INTEGER, INTEGER
RETURNS CSTRING(255) FREE_IT
ENTRY_POINT FireBird.StrZero MODULE_NAME UDFFireBird;
DECLARE EXTERNAL FUNCTION Replicate
char(1), INTEGER
RETURNS CSTRING(255) FREE_IT
ENTRY_POINT FireBird.Replicate MODULE_NAME UDFFireBird;
Estou usando assim:
Select Codigo, Descricao || replicate(.,10)
From CadCat
Erro:
Invalid token.
invalid request BLR at offset 75.
function REPLICATE is not defined.
module name or entrypoint could not be found.
O que está errado ?
O MODULE_NAME UDFFireBird ?
O ENTRY_POINT FireBird.Replicate ?
Por favor, alguma ajuda ?
Obrigado
Angelo Zagatti
Curtir tópico
+ 0Posts
21/04/2012
Emerson Nascimento
ENTRY_POINT FireBird.Replicate => ENTRY_POINT Replicate
Gostei + 0
21/04/2012
Angelo Zagatti
Já tentei assim tambem, mas nao deu certo.
Nao tenho muinta certeza ainda, mas pelo que vi na net, nao é possivel fazer uma dll em c# para usar como UDF no firebird.
Se algum tiver alguma confirmaçao, por favor relatar.
Obrigado
Gostei + 0
22/04/2012
Deivison Melo
existem muitos exemplos na net utilizando o Delphi, veja se há possibilidade de adptar para o C# (nunca soube de alguém que fez dll para utilização de funções externas (UDF) em C# ou até mesmo em C/C++ (Que imagino que no firebird seja mais fácil de encontrar em C/C++).
Forte abraço!!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)