[RESOLVIDO] duvida no codigo

Discussão em 'EMS , HCM e Totvs 11' iniciado por kakaos, Fevereiro 22, 2011.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. kakaos

    kakaos Membro Participativo

    Boa noite pessoal,
    estou tentando criar um codigo para importar algumas informacoes, porem está dando um erro que nao estou conseguindo resolver....... alguem pode me dar um help??? segue o trecho onde está dando o erro.

    FIND FIRST emitente EXCLUSIVE-LOCK
    WHERE emitente.cod-emitente = tt-emit.cod-emitente AND
    emitente.nome-abrev = tt-emit.nome NO-ERROR.
    IF NOT AVAIL emitente THEN DO:
    CREATE emitente.
    ASSIGN emitente.cod-emitente = tt-emit.cod-emitente
    emitente.nome-abrev = tt-emit.nome
    emitente.telefone = tt-emit.telefone.
    END.
    ELSE
    IF AVAIL EMITENTE THEN DO:
    ASSIGN emitente.cod-emitente = tt-emit.cod-emitente
    emitente.nome-abrev = tt-emit.nome
    emitente.telefone = tt-emit.telefone.

    END.
    o erro segue abaixo:
    ** Only individual array elements allowed in expressions. (361)
    ** Could not understand line 48. (196)
    ** Only individual array elements allowed in expressions. (361)
    ** Could not understand line 54. (196)
    obrigado...
  2. lima

    lima Membro Participativo

    Bom dia,

    amigo está dando erro porque o campo telefone da tabela emitente é um "array", ou seja, esta definida no dicionario de dados como extent 2.

    Para corrigir o erro é simples, vc precisa colocar um indice no assign, conforme exemplo abaixo:

    assign emitente.telefone[1] = "145454554"
    emitente.telefone[2] = "9889898989".

    Isso se faz necessário pelo fato do emitente poder ter dois telefones para contato, fixo e celular por exemplo.

    Espero ter ajudado.

    Abraços
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página