Preciso desenvolver uma rotina onde o usuário informe a maneira como ele quer que seja feita uma determinada analise das informações contidas na base de dados. Não sei por onde começar, se alguém tiver uma dica de como desenvolver esse interpretador eu agradeceria. Abaixo exeplificarei como seria essas "maneiras de analisar as informações":
Exemplo 1:
Tabela NOTAS_FISCAIS campos :
UF (unidade da federação)
CFOP (Codigo Fiscal de Operação)
TIPONOTA (E para entrada e S para saida)
No caso verificar se o CFOP condiz com o tipo de nota. A formula seria:
Se CFOP < 4000 E TIPONOTA = E então
RESULTADO = VERDADEIRO SENAO
RESULTADO = FALSO
Exemplo 2
Tabela NOTAS_FISCAIS Campos:
VALOR_ICMS
BASE_ICMS
ALIQUOTA_ICMS
FORMULA:
VR_AUXILIAR = BASE_ICMS * ALIQUOTA_ICMS / 100
Se VR_AUXILIAR = VALOR_ICMS então
RESULTADO = VERDADEIRO SENAO
RESULTADO = FALSO
Existem outros campos numéricos e que poderiam ser utilizados nas formulas, bem como outros campos alfanumericos a serem comparados. A ideia é que usuário escreva essa "formula" num componente MEMO e o sistema em execução leia esse memo, interprete e gere o resultado. A dúvida é como criar esse interpretador.
Pergunta
Carlos Portes
Bom dia pessoas,
Preciso desenvolver uma rotina onde o usuário informe a maneira como ele quer que seja feita uma determinada analise das informações contidas na base de dados. Não sei por onde começar, se alguém tiver uma dica de como desenvolver esse interpretador eu agradeceria. Abaixo exeplificarei como seria essas "maneiras de analisar as informações":
Exemplo 1:
Tabela NOTAS_FISCAIS campos :
UF (unidade da federação)
CFOP (Codigo Fiscal de Operação)
TIPONOTA (E para entrada e S para saida)
No caso verificar se o CFOP condiz com o tipo de nota. A formula seria:
Se CFOP < 4000 E TIPONOTA = E então
RESULTADO = VERDADEIRO SENAO
RESULTADO = FALSO
Exemplo 2
Tabela NOTAS_FISCAIS Campos:
VALOR_ICMS
BASE_ICMS
ALIQUOTA_ICMS
FORMULA:
VR_AUXILIAR = BASE_ICMS * ALIQUOTA_ICMS / 100
Se VR_AUXILIAR = VALOR_ICMS então
RESULTADO = VERDADEIRO SENAO
RESULTADO = FALSO
Existem outros campos numéricos e que poderiam ser utilizados nas formulas, bem como outros campos alfanumericos a serem comparados. A ideia é que usuário escreva essa "formula" num componente MEMO e o sistema em execução leia esse memo, interprete e gere o resultado. A dúvida é como criar esse interpretador.
Desde já agradeço.
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.