FM SOLUÇÕES - (31) 3761-3490
Seja bem vindo ao Fórum FM Soluções!!

Aqui você poderá postar suas dúvidas, experiências e ainda baixar e postar roteiros e tutoriais não oficiais sobre os módulos da RM Sistemas.

E ainda, conhecer um pouco sobre os nossos produtos e serviços!!!

Participe do fórum, é rápido e fácil

FM SOLUÇÕES - (31) 3761-3490
Seja bem vindo ao Fórum FM Soluções!!

Aqui você poderá postar suas dúvidas, experiências e ainda baixar e postar roteiros e tutoriais não oficiais sobre os módulos da RM Sistemas.

E ainda, conhecer um pouco sobre os nossos produtos e serviços!!!
FM SOLUÇÕES - (31) 3761-3490
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Procurar
 
 

Resultados por:
 


Rechercher Pesquisa avançada

Tópicos semelhantes
    Últimos assuntos
    » Consulta SQL Banco RM
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptyTer 20 Jun 2017 - 12:48 por paulo.ferreira_rj

    » Instalar base DEMO
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptySex 2 Jun 2017 - 6:29 por akaytatsu

    » Relatorio Rm reports / Holerite salario
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptyTer 18 Out 2016 - 8:09 por Gárgio

    » DEFAULT NO CADASTRO DE FUNCIONARIOS RM LABORE
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptySex 7 Out 2016 - 21:51 por mpsbrasilia

    » Duvida RM Labore - Calculo Folha de Pagamento
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptySeg 12 Set 2016 - 15:51 por RIVALDO PAES

    » Exportar Imagem do banco de dados SQL SERVER
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptyQui 28 Jul 2016 - 11:42 por edivan

    » Consulta SQL
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptyQui 10 Set 2015 - 11:32 por evertonerp

    » Existe Algum Demo do RM Labore???
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptySex 17 Abr 2015 - 11:53 por fmsolucoes

    » RM BIBLIOS
    Criando uma rotina customizada de autoincremento de ID´s no RM EmptySeg 16 Fev 2015 - 7:50 por fmsolucoes

    Galeria


    Criando uma rotina customizada de autoincremento de ID´s no RM Empty
    Navegação
     Portal
     Índice
     Membros
     Perfil
     FAQ
     Buscar
    Parceiros & Clientes FM Soluções

    Criando uma rotina customizada de autoincremento de ID´s no RM

    Ir para baixo

    Criando uma rotina customizada de autoincremento de ID´s no RM Empty Criando uma rotina customizada de autoincremento de ID´s no RM

    Mensagem por fmsolucoes Qua 6 Jan 2010 - 14:13

    Criando uma rotina customizada de autoincremento de ID´s no RM
    Coloque duas Queries no Datamodule.

    Uma vamos chamar de qUpdAutoInc e a outra de qGetAutoInc. Estas queries, uma vai obter o valor da chave na tabela GAUTOINC e a outra gravar o novo valor lá.

    Na query qGetAutoInc, vamos colocar a seguinte senteça:


    SELECT VALAUTOINC FROM GAUTOINC
    WHERE CODCOLIGADA = :CODCOLIGADA AND
    CODSISTEMA = :CODSISTEMA AND CODAUTOINC = :CODAUTOINC

    Esta sentença traz o valor atual do campo informado em CODAUTOINC (que na verdade é o nome do campo chave de uma tabela)


    Na qUpdAutoInc, vamos colocar a sentença:

    UPDATE GAUTOINC SET VALAUTOINC = :VALAUTOINC
    WHERE CODCOLIGADA = :CODCOLIGADA AND
    CODSISTEMA = :CODSISTEMA AND CODAUTOINC = :CODAUTOINC

    Agora para você fazer o autoincremento, basta fazer:


    function TDMFat.GenIDMov: integer;
    begin
    qGetAutoInc.ParamByName('CODCOLIGADA').AsInteger := CorporeRM.Coligada;
    qGetAutoInc.ParamByName('CODSISTEMA').AsString := 'T';
    qGetAutoInc.ParamByName('CODAUTOINC').AsString := 'IDMOV';
    qGetAutoInc.Open;
    Result := qGetAutoInc.fieldbyname('VALAUTOINC').AsInteger + 1;
    qGetAutoInc.Close;
    qUpdAutoInc.ParamByName('CODCOLIGADA').AsInteger := CorporeRM.Coligada;
    qUpdAutoInc.ParamByName('CODSISTEMA').AsString := 'T';
    qUpdAutoInc.ParamByName('CODAUTOINC').AsString := 'IDMOV';
    qUpdAutoInc.ParamByName('VALAUTOINC').AsInteger := Result;
    qUpdAutoInc.ExecSQL;
    end;


    No caso acima, esta rotina incrementa o campo IDMOV da Tabela TMOV do RM Nucleus. Muitos aqui vão me questionar porque eu não uso o Succ para incrementar o valor do campo. Eu explico: O uso de funções e procedimentos, só se torna conveniente quando a rotina é de complexidade considerável e que não é viável codificar diretamente na estrutura do programa. Para quem não sabe o que acontece com seu programa, quando ele esta sendo executado e encontra uma função o procedimento, ele para de executar, vai ser empilhado e então será executada a rotina (procedimento ou função) em questão. Então ficar usando em demasia, funções como Inc, Succ, dentre outras, irá promover uma relativa lentidão no seu sistema. Eu, particularmente, evito estas funções. Ao invés de usar Inc(i), eu prefiro usar i := i + 1
    Postado por Walter Chagas Jr. às 12/21/2007 01:14:00 PM 0 comentários
    fmsolucoes
    fmsolucoes
    Admin

    Mensagens : 292
    Pontos : 613
    Data de inscrição : 17/07/2009
    Idade : 46
    Localização : Conselheiro Lafaiete

    http://www.fmsolucoeserp.com.br

    Ir para o topo Ir para baixo

    Ir para o topo

    - Tópicos semelhantes

     
    Permissões neste sub-fórum
    Não podes responder a tópicos