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.
O AICS possui o ambiente de manipulações de informações mais simples
e poderoso da atualidade. O seu conceito facilita e padroniza as principais
atividades do dia-a-dia de nossas empresas.
No esforço de deixar ainda mais transparente o conjunto de ferramentas
do AICS, a BF está embutindo um controle em Javascript interno ao
ServAICS e WebAICS que permite controlar, na forma de portal, qualquer
nível de suas informações e consultas. Assim:
- Ao navegar por uma informação, o AICS gerará um formulário de pesquisas
com os mesmos campos definidos no Centro de Informações do AICS.
- Abaixo do formulário, um botão que atualiza a pesquisa e outros que
podem aplicar o filtro das pesquisas em vistas definidas sobre a tabela
principal.
- Nos campos de entrada de data, adicionamos um calendário no qual
uma data poderá ser selecionada visualmente.
- Quando houver informação conectada (ex.: No comercial, pode-se
selecionar o Cadastro do cliente), o AICS (a partir da configuração da
tabela de relacionamentos) abrirá um botão de pesquisa que recairá
sobre a navegação e retornará com os dados para o form principal.
Enfim, um conjunto de funções avançadas que, SEM UMA LINHA DE
CÓDIGO, deixará o trabalho de manipular suas informações muito mais
poderosa, sem restrições visuais, sem falhas de navegação (estamos
usando métodos semelhantes ao AJAX).
Todos estes recursos já são válidos para todas as bases de dados
anteriores do AICS!
O objetivo desta função é permitir o uso dos SQLs padrões do AICS
ou os elaborados pelo usuário no Centro de Informações de uma forma
padronizada.
Sua sintaxe é:
Function BuildSQL(Tabela,NetLocal,Filtros:String;ComOrderBy,ComPai:boolean;APartirDe,Retornar:longint;ComJoin:Boolean):String
Onde,
Tabela -> Nome da tabela ou estrutura que contém o resultado
NetLocal -> Código do local
Filtros -> Sequência de filtros que devem ser aplicados ao SQL, devem ser na notação CAMPO=VALOR e separados por ;
ComOrderBy -> Se adiciona ordenação
ComPai -> Se inclui tabela pai na chamada (casos de master-detail)
APartirDe -> Posição inicial do resultado
Retornar -> Nr de retornos desejados
ComJoin -> Se adiciona ligações, mantenha sempre False pois não é necessário por enquanto
As ferramentas do BF AICS irão gerar um log dos erros de SQL em scripts de usuários. O objetivo disso é auxiliar o desenvolvedor de rotinas do AICS na melhoria da qualidade do seu próprio trabalho interno.
Nova opção válida para tabelas tipo detalhe (tabelas conectadas a outras tabelas através
de link entre colunas com uma tabela pai dada):
- Copia dados anteriores ao inserir detalhe
Isto significa que novas linhas adicionadas durante uma edição mestre-detalhe irão copiar
os dados da linha anterior. Isto é muito útil ser ligado quando as inserções forem variações
da linha anterior. Se a tabela detalhe estiver vazia, os campos de valores iniciais ainda
continuam a valer.
Ainda, se este campo estiver com valor diferente deste novo, o processamento dos novos
dados ainda se dá pelos valores iniciais da definição.
O envio de arquivos por FTP, agora, pode ser feito numa única linha de
comando nos scripts do NF AICS. A função CopyFile foi expandida, podendo
agora, com a sintaxe:
function CopyFile(Org, Dest: string): Boolean
Copiar arquivos entre unidades locais e de rede e, agora, também enviar
por FTP. Para isso, o destino deve ser indicado com a seguinte sintaxe,
por exemplo:
CopyFile('c:\meutexto.doc', 'ftp://login:senha@meusite.com/pasta1/pasta2/nomefinal.doc');
Isto pode ser colocado tanto no lado do cliente quanto no lado do servidor. Os
usos deste recurso são muitos, por exemplo, podendo integrar envio de imagens
com o site de e-commerce (veja mais das funções que convertem imagens e
podem gerar miniaturas automaticamente) ou copiar arquivos para backup etc.
Limitado à sua necessidade e imaginação!
Texto considerado avançado, despreze-o se julgar improcedente.
Existe uma função callback (chamada pelo AICS para alterar seu comportamente básico)
que permite alterar livremente a expressão de filtragem. Este recurso estava presente
apenas nos filtros associados a telas de pesquisa. Entretanto, em tabelas em modo
planilha (quando o visual é de um painel de filtros e os dados em grid), esta função não
estava sendo ativada.
Com esta padronização, tanto os filtros de pesquisas quanto os filtros das telas do
usuário em modo planilha poderão ser personalizados. A sintaxe é a mesma:
Function ExpressionUserFilter(Coluna, Tabela, Valor:String):String;
Cujos parâmetros são:
>> Coluna -> Nome da coluna que está sendo filtrada, pode conter o nome da tabela
>>Tabela -> Nome da tabela sendo filtrada (normalmente, a mesma da tela principal)
>> Valor -> Valor que foi indicado pelo operador
Como resultado, deve-se retornar a expressão SQL que irá compor o filtro Where,
sabendo-se que este texto será adicionado assim:
... and (
O BF AICS está com uma nova e fantástica função para "escrever" ou assinar
suas imagens. Sem nenhuma restrição, esta função pode aplicar este recurso
até mesmo sobre imagens previamente convertidas pela função ConverteImagem.
Relembrando a declaração desta função (revisada recentemente para aceitar os
novos formatos JPEG):
Function ConverteImagem(Origem, Destino, Formato:String;var LargDest, AltDest:longint):boolean
Sendo que os parâmetros são autoexplicativos e já conhecidos.
A nova função que está disponível tanto para o AICS versão Windows quanto para
o servidor Web do AICS é:
function ApplyImageSignature(ImageFile,Text,Font,Style,RGBColor,VAlign,HAlign:string; FontSize,Threshold:longint;Replicate:boolean):boolean
Os seus parâmetros são:
>> ImageFile -> É o caminho para o arquivo da imagem que será alterada (faça backup antes se julgar necessário)
>> Text -> Texto que será aplicado sobre a imagem
>> Font -> Fonte a ser utilizada (se a função for executada no servidor, não esqueça de verificar se a fonte existe pelo painel de controle)
>> Style -> Estilo, adicionando B e/ou I aplica a fonte em Bold e/ou Italic
>> RGBColor -> Texto que pode representar a cor do texto em RGB. Envie os caracteres no formato # para evitar dúvidas.
Se este texto for vazio, o padrão é escrever em modo linha d'água
>> VAlign -> Alinhamento vertical (Letra T, C ou B)
>> HAlign -> Alinhamento horizontal (Letra L, C ou R)
>> FontSize -> Corpo do texto, se deixado em branco, a rotina encontrará o maior corpo na largura da imagem
>> Threshold -> Limiar (de 0 a 100) para rebaixar a imagem quando a cor estiver ausente
>> Replicate -> Pode ser True ou False indicando que o texto será replicado. Entretanto, se for True, apenas
cores ausentes serão aceitas
Esta função escreve e troca a imagem indicada. Após isso, ela pode ser reamostrada, copiada e usada
diretamente nos sites ou mensagens eletrônicas.
Nas atividades de comunicação atuais, a ferramenta de email é uma forte aliada na redução
de custos e agilidade. O BF AICS já oferece imensas metodologias e opções de comunicação
automatizadas ou não para este fim.
Para dar ainda mais poder de comunicação aos usuários do sistema, a BF publicou a seguinte
função ExtractEMailAll, cuja sintaxe é:
Function ExtractEMailAll(Origem:String):String
Isto é, passando um texto como argumento, ela retornará todas as contas de e-mail presentes
neste texto já separadas uma por linha. Com este recurso, pode-se inspecionar logs de mensagens,
páginas Web e mensagens trocadas com clientes e fornecedores.
Quando uma tabela é criada no Centro de Informações e esta tabela é "conhecida",
o AICS baixa on-line a estrutura da tabela e as suas colunas.
Alteramos esta rotina para que ela peça do novo site Shop.AICS estes dados e eles
são exibidos na mesma hora que ocorre a gravação. Além disso, independe do dado
estar ou não gravado como arquivo, ele será obtido diretamente do banco de dados.
As telas baseadas no Centro de Informações que foram master-detail apresentam uma otimização somente visível em conexões abaixo de 512k (0,5M).