POR QUE ESCOLHER A BYTE FACTORY?

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.

CONTATO
  • End.: Rua Oriente Nº 55, cj 1310
    Campinas-SP CEP 13090-740
  • Tel: +55 19 3251-8496
  • Email: atendimento@bf.net.br

Liberação de gravação mesmo com campos obrigatórios ativos

08/12/2011 em CENTRO DE INFORMAÇÕES

Atenção! Esta nota pode ser considerada altamente técnica pela maioria dos usuários.
Objetivo Permitir que o cliente final, dentro do Centro de Informações, ative ou desative as colunas obrigatórias do sistema. Já existe o conceito de adicionar colunas obrigatórias, é necessário o conceito agora de desativação.
Detalhamento da Alteração A fim de não causar instabilidade nas regras de negócio atuais dos clientes, criamos uma função Callback com a seguinte sintaxe:
Function AICS_FORCEOK(NomeTab:String):Boolean NomeTab será o nome da tabela definida no navegador. Esta função será chamada apenas quando estiver em modo de edição (ou inserção) e a verificação de OK for falsa como padrão.
Portanto, esta função só precisa ser definida e implementada se houver alguma necessidade, dentro da regra de negócios, de validar uma gravação que não seria validada normalmente pelas regras usuais do sistema.
Esta função vale para qualquer tela do AICS, mesmo as nativas e definidas pelo usuário.

Histórico para notas de versão automatizados

02/10/2011 em CENTRO DE INFORMAÇÕES

O AICS, quando usado como ferramenta de desenvolvimento, possui características exclusivas de gestão das informações, mantendo registro das alterações nas rotinas e permitindo retorno, como todas as demais informações do sistema.
Nesta atualização, adicionamos um histórico obrigatório das alterações efetuadas visando padronizar suas alterações. Este histórico foi adicionado a uma aba histórico que acompanha o código da rotina. Isto é, em caso de retorno, o histórico também acompanhará e será mantido em fase com a rotina.
O texto do histórico irá datar automaticamente o comentário e solicitará o nome real do responsável, quando em uso o login SUPERVISOR.
Para cada aplicação, o usuário poderá atualizar notas de novos recursos internos para os demais usuários internos do sistema.

Comando Abort e os navegadores

01/07/2011 em CENTRO DE INFORMAÇÕES

Esta nota é destinada aos desenvolvedores do BF AICS.
O BF AICS possui um conjunto de controles que permite máxima fidelidade no envio dos dados ao servidor. Por exemplo, o evento Gravar pode retornar falso e a gravação não ser efetuada enquanto tais e tais condições não forem satisfeitas.
Quando o desenvolvedor cria formulários com os objetos TDBNavigator, o evento BeforeAction, na verdade, não interrompe o processamento.
Entretanto, ao atribuir tal evento em suas rotinas, se for executado o comando Abort (sintaxe: Procedure Abort;) neste momento, o BF AICS irá interromper o processamento e o comando será descontinuado.
Este procedimento Abort pode não executar nenhum efeito se executado dentro de outros eventos, atenção a isso. Se, em seus desenvolvimentos, for encontrado algum caso em que esta metodologia seja aplicável e não esteja implementada, basta avisar a BF para sua inclusão.

Novo objeto de form para scripts

01/07/2011 em CENTRO DE INFORMAÇÕES

Esta nota é focada para desenvolvedores sobre o BF AICS.
Sabemos que os objetos nativos e mesmo outros podem ser utilizados livremente no BF AICS, incluindo os descritores de formulários do tipo DFM.
O objeto de formulário mais comum é o TForm, porém, este objeto não possui a integração que o BF AICS apresenta em sua interface.
Para ajudar a melhorar os seus desenvolvimentos, a BF criou o objeto TFormScript, que pode ser utilizado no lugar do TForm e terá as seguintes vantagens:
1. Menu Janela e Explorar integrado aos demais módulos do sistema 2. O enter irá funcionar como TAB da mesma forma que as demais telas do BF AICS 3. Apresenta o menu Ajuda, quando em login Supervisor, com as opções Depuração e Visualizar Script Associado para rastreamento de execuções.
Isto permitiu um comportamento extremamente uniforme mesmo dos desenvolvimentos feitos completamente livres pelos programadores.
Migrações de sistemas legados nunca foram tão simples quanto agora.

Novas publicações de objetos para campos

05/12/2010 em CENTRO DE INFORMAÇÕES

Esta nota pode ser considerada altamente técnica para a maioria dos usuários do sistema.
No Centro de Informações do AICS, publicamos os seguintes objetos: TStringField e TFloatField.
Com estes objetos, pode-se criar campos dinamicamente nos cursores de dados nativos. Ainda, publicamos a função interna do AICS que permite fixar os campos ao cursor e, após isso, criar outros objetos de campos livremente, como campos que sejam calculados a tempo de exibição.
A função publicada foi:
Procedure PermDataSetFields(Cursor:DelphiTDataSet)
Execute-a passando um cursor (mesmo fechado) como parâmetro, mas que já tenha a expressão SQL associada. Ele será aberto e seus campos fixados ao objeto para aceitar adição de campos calculados em seguida. Tudo isso numa única linha de comando.

Nova opção para ocupar a maior largura das telas

05/12/2010 em CENTRO DE INFORMAÇÕES

Um dos recursos mais interessantes do Centro de Informações do AICS é a criação automática de telas. Nesta criação, como padrão, o sistema define uma largura dos campos que seja de acordo com a barra de botões. Este comportamente, entretanto, pode não gerar o melhor aproveitamento de monitores de alta resolução.
Nesta atualização do sistema, adicionamos na aba Opções do Centro de informações, a nova opção Máxima largura. Como padrão, fica desligada e o sistema se comporta da maneira anterior. Ainda, como a opção se ativa apenas se ligada, as implementações anteriores não sofrem modificações.

Publicação do WebBrowser

05/12/2010 em CENTRO DE INFORMAÇÕES

Esta atualização pode ser considerada técnica demais por alguns leitores.
Na versão mais recente do sistema, visando as regras de negócios dos clientes, a BF publicou o objeto WebBrowser. Isto significa que será possível adicionar navegação em endereços de internet (URLs)
a quaisquer telas do Aics nativos ou criadas pelos clientes localmente.
Para utilizar este novo componente, basta declará-lo, criá-lo num dado elemento pai e executar a ação "Navigate". Por exemplo:
MeuBrowser := TWebBrowser.Create(Self);
MeuBrowser.parent:=PanelPrincipal; MeuBrowser.navigate('http://www.aics.com.br');

Opção de não emitir mensagens ao movimentar materiais

05/12/2010 em CENTRO DE INFORMAÇÕES

Muitas vezes, a movimentação de materiais por rotinas dos usuários não necessitam de mensagens (que requerem até intervenção do usuário).
Por exemplo, em importações, isso acaba sendo anti-produtivo. Para facilitar estes casos, a versão mais recente do sistema irá eliminar as mensagens se uma variável global for ativada:
SetVariable('AICS_NOMESSAGE_IO','1');
Com isso, pode-se ligar ou desligar as mensagens relacionadas aos comandos de movimentação de materiais de acordo com sua realidade.

Adicionada pesquisa de imagens o banco de imagens

02/12/2010 em CENTRO DE INFORMAÇÕES

É apenas um recurso cadastral que não estava disponível. No Centro de Informações, controle e conteúdo, existe a possibilidade de associar uma determinada colunas a uma determinada estrutura hirárquica. Todas as estruturas podem ser associadas, por exemplo, comercial, contábil, financeira, de materiais, classificações profissionais etc.
Entretanto, a estrutura de imagens, que dá acesso á pesquisa de imagens pelo servidor, estava ausente. Adicionamos a opção IMG à lista.
Ativando-a, um botão de pesquisa será criado ao lado do campo na tela permitindo navegar pelas imagens do servidor de conteúdo.
Lembrando que os conteúdos atuais podem ser imagens, documentos e arquivos eletrônicos em geral.

Expansão da rotina que assina PDFs

02/12/2010 em CENTRO DE INFORMAÇÕES

A rotina que pode ser inserida em scripts do usuário para assinar digitalmente documentos PDF foi alterada. Agora, pode-se passar o motivo da assinatura (o motivo aparece quando a mesma é exibida pelo Adobe Reader, por exemplo).
A nova sintaxe ficou:
Function PDFSign( FileToSign, Reason, CertFile, Password:String) :boolean Por favor, caso alguma rotina tenha sido implementada na sintaxe anterior, favor apenas adicionar uma string vazia no segundo parâmetro, isso manterá o comportamento anterior.

Leia, por favor

Nosso website utiliza cookies para facilitar a navegação. Ao continuar o acesso, você aceita essa política automaticamente.