Inclusao por ODBC

Discussão em 'Banco de Dados / Database' iniciado por rodhentz, Fevereiro 17, 2010.

  1. rodhentz

    rodhentz Sem Pontuação

    Fala pessoal,

    Estou fazendo um processo de integracao entre um sistema que usa SQL Server e banco progress, EMS mais especificamente.

    Na minha integracao eu ja realizei a inclusao de registros na base progress sem problema, mas tenho um problema em um campo apenas, o campo telefone na tabela mgcad.emitente

    Na base do progress ele é do tipo extended, eh isso? ou seja tenho dois valores, mas em um só. telefone[1] e telefone[2]

    na minha instrucao insert, me retorna erro se faco colocarndo o telefone[1] como campo, exemplo que dá erro :

    insert into pub.emitente (cod-emintete, ..., telefone[1]) values (1, ..., "1199998888") , isso dá errado, mas se faco

    insert into pub.emitente (cod-emintete, ..., telefone) values (1, ..., "1199998888") ele dá certo, porem o telefone[1] e telefone[2] ficam iguais.

    como resolvo isso? como insiro dados diferentes no telefone[1] e telefone[2]

    alguem já fez isso , tem alguma dica pra me passar?

    obrigado.
  2. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Olá,

    No caso de campos extend no Progress, por ODBC este valores são gravados para um único campo, porém separados por ";".

    Neste caso se você quiser inserir o telefone somente para telefone[1], deverá utilizar o seguinte comando:
    Código:
    insert into pub.emitente (cod-emintete, ..., telefone) values (1, ..., '1199998888;')
    Se quiser inserir o valor para os dois(telefone[1] e telefone[2]):
    Código:
    insert into pub.emitente (cod-emintete, ..., telefone) values (1, ..., '1199998888;0101010101')
    Se quiser inserir somente para o segundo(telefone[2]):
    Código:
    insert into pub.emitente (cod-emintete, ..., telefone) values (1, ..., ';0101010101')
    E no caso para recuperar estes valores, deverá fazer algo em programação para separar os valores.

    Espero que ajude.

    []'s
  3. rodhentz

    rodhentz Sem Pontuação

    maravilha, deu certo.

    obrigado.

Compartilhe esta Página