Estimado(a) sweetheart_lovebr,

Boa tarde. Sem passar pela dll, você teria que saber a string de comando
que abre o caixa. Tipo:  10 E1 Z3 S1 12 33 S (sei lá o que) e depois
convertê-la e passar pra porta onde o caixa está conectado ! (falei
besteira?)

Porta do CAIXA: COM1
String (comando) que abre o caixa: 10 E1 Z3 S1 12 33 S (lê aí o manuel
do caixa)

procedure AbrirCaixa;
var
    tfCaixa : TextFile;
    sComando, sCodigo : String;
begin
    sCodigo  := '10 E1 Z3 S1 12 33 S';
    sComando := Converte(sCodigo);
    Assignfile(tfCaixa,'COM1'); //Porta: COM1, COM4, etc e tals
    Rewrite(tfCaixa);
    Writeln(tfCaixa,sComando);
    CloseFile(tfCaixa);
end;

function Converte(sCodigo : String): String;
var
    sRetorno : String;
    nI : integer;
    cByte : byte;
begin
    sRetorno := '';
    for nI := 1 to GetTokenCount(sCodigo,' ') do
        try
            cByte := StrToInt(GetToken(sCodigo,' ',nI));
            sRetorno := sRetorno + chr(cByte);
        except
            break;
        end;
    Result := sRetorno;
end;

// hehe..funcao que não acaba mais..
function GetToken(sCadeia, sSeparador: String; iToken: Integer): String;
var
    iPosicao: Integer;
begin
    while iToken > 1 do begin
        Delete(sCadeia, 1, Pos(sSeparador,sCadeia) + Length(sSeparador)
- 1);
        Dec(iToken);
    end;
    iPosicao:= Pos(sSeparador, sCadeia);
    if iPosicao= 0 then
        Result:= sCadeia
    else
        Result:= Copy(sCadeia, 1, iPosicao- 1);
end;

function GetTokenCount(Cadeia, Separador : String):integer;
var
    Posicao:integer;
begin
    Posicao:= Pos(Separador,Cadeia);
    Result := 1;

    if Cadeia <> '' then begin
        if Posicao<> 0 then
            while Posicao <> 0 do begin
                Delete(Cadeia,1,Posicao);
                Posicao:= Pos(Separador, Cadeia);
                Inc (Result);
            end;
        end
        else
            Result := 0;
end;


Um estimado colega me passou uma vez, nunca testei mas taí a
oportunidade.

Não se esqueça do feedback.

Saudações.

---
[]'s

Alexandre
msn: [EMAIL PROTECTED]

 
-----Mensagem original-----
De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
Em nome de sweetheart_lovebr
Enviada em: terça-feira, 23 de agosto de 2005 15:08
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Abrir Gaveta de Dinheiro

Como faço para abrir uma gaveta de dinheiro que está ligada diretamente
ao computador sem passar pela impressora usando a dll da bematech?







-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a