Além de oferecer 100% de ferramentas e serviços personalizados, nossa equipe tem o foco na alavancagem do seu negócio, informando e auxiliando sua expansão.
A rotina que processa movimentos de estoque não estava convertendo unidades quando testava saldos de estoque. Isto poderia causar mensagens de estoque insuficiente sem ser verdade.
Com o botão direito do mouse nos grids, agora pode-se exportar para PDF também. Logo, pode-se exportar para Txt, Html, Excel e PDF.
Encontrado um caso de falha da rotina de compressão quando um original tinha enormes repetições de sequências de caracteres. Já ajustado para o Aics e ServAics.
Para melhorar o controle de responsabilidades, adicionamos o nome do comprador às compras. Agora, temos os registros do requisitantes, comprador e responsáveis pela aprovação.
Adicionamos, ao facilitador do valor total a ser pago em função dos pagamentos, a situação de indicar primeiro o cheque e depois o valor em dinheiro.
Devido ao total do pedido poder estar desatualizado quando o cursor estiver no grid, deixamos esta informação invisível quando o cursor estiver no grid de itens.
Fazendo uma pesquisa no servidor Indy, descobrimos que o nr de conexões estava limitado a 15, deixamos ilimitado agora.
Ocorria, no novo recurso de editar mais de uma tabela na mesma tela, do botão edita não obedecer aos status das tabelas. Corrigido este problema na versão mais atual.
O comando copyfile padrào do windows copia um arquivo para outro destino sobrescrevendo-o. O copyfile disponível para o Aics e o servaics aceita coringas no arquivo fonte e poderá concatenar mais de um arquivo no destino. Isto foi feito para melhorar o controle de uploads pelo servaics quando apenas pacotes são enviados.
Para permitir criar nós na árvore princial, criamos a função callback:
Function AdditionalNodes(Tabela,Local:String):String;
>> deve retornar uma sequencia com os nomes das estruturas a serem criadas. O ícone será o ícone de função.
A função acima ainda chamará o callback anterior que permite diferenciar nomes dos nós, assim:
Function EvaluateLabelTree(Tabela,Local,NomeAtual:String):String;
A fim de personalizar as ações do tree, um novo callback permite interceptar e executar eventos distintos:
Function MayExecTreeAction(Tipo,Local,Tabela,Filtro):boolean;