Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R10
Converter bancos de dados a Projetos
|
Funcionalidade obsoleta | Estado de conversão | Comentário |
Botões de opção de imagem | error | devem ser convertidos em botões 3D |
Dials | error | Deve ser convertido a indicadores de progresso |
Matrix | aviso | Objetos matriz são convertidos automaticamente para imagens svg e armazenados na pasta recursos do banco de dados |
Botões ressaltados | atenção | Convertidos a botões invisíveis (com o evento "on mouse move" selecionado se uma mensagem de ajuda estiver associada ao botão ressaltado - neste caso, o roll over se desativa). |
Campos booleanos como botões radio | aviso | Compatível, mas convertido automaticamente para um par de botões radio agrupados padrão com expressões associadas: [table]Boolean_field e Not([table]Boolean_field) |
Boolean field as radio buttons | warning | |
Formato de Imagem On Background | - | Convertido a truncado (não-centrado) |
Fundo Transparente | - | Convertido a "None" cor de preenchimento. _o_OBJECT SET COLOR está obsoleto - use OBJECT SET RGB COLORS em seu lugar. |
List box - Compatibilidade com área de deslocamento | advertencia/error | Utilize as funcionalidades de list box regulares |
List box - Compatibilidade dos list boxes conectados | error | Utilize as funcionalidades de list box padrão |
Interface de plataforma propriedade "imprimir" | aviso | Objetos com propriedade "printing" são convertidos automaticamente para estilo "flat" (botão, checkbox, botão radio, variável/campo com borda "system") |
"Visible title"/"Visible icon" propriedades para botões 3D | - | Remove título ou ícone para não ser exibido |
Barra de menu ativo | aviso | Barras de menu associadas estão sempre ativa em projetos. O código método de formulário pode precisar ser adaptado. |
Número tópico de ajuda | aviso | Não é compatível . Use OPEN URL |
Por causa de mudanças de comportamento em projetos, a renderização de objetos de formulário pode ser diferente quando se utilizam comandos de formato com parâmetros predeterminados ou faltantes.
Comando | Mudança de comportamento em projetos | Depois da conversão | Solução |
GET STYLE SHEET INFO, OBJECT SET STYLE SHEET, OBJECT Get style sheet | Folhas de estilo Legado não são compatíveis | Só folhas de estilo "automáticas" podem ser usadas | Use OBJECT SET FONT, OBJECT SET FONT SIZE, OBJECT SET FONT STYLE para aplicar estilos dinamicamente |
OBJECT SET FORMAT | Não há compatibilidade predeterminada para os parâmetros omitidos. | Renderização incorreta de objetos, por exemplo, imagem do botão não com problemas | Verifique o parâmetro formatoDisplay para ter certeza de que todos os valores estejam declarados. |
Comando ignorado para objetos em desuso (matriz, diais...) | Objetos obsoletos não são renderizados | Use objetos compatíveis. | |
OBJECT SET RGB COLORS | Opção de formulário "transparente" foi removida, transparência é estabelecida apenas pela cor de preenchimento Nenhuma | Fundo branco e preto ao invés de transparente | Remova o parâmetro opcional corFundo se não for usado |
_o_OBJECT SET COLOR | O comando ficou obsoleto em projetos | Fundo branco ou negro ao invés de transparente | Use OBJECT SET RGB COLORS |
As opções de estrutura de banco de dados estão obsoletas e podem gerar erros no arquivo de histórico de conversão de projeto (ver comentários).
Proprietáios obsoletos | Estado de conversão | Comentário |
Opção de campo "Can't Modify" | warning | Automaticamente move no nível de formulário durante a exportação para projeto |
Opção de Campo "Display only" | warning | Automaticamente movido no nível de formulário durante a exortação para projeto |
Opção de campo "Mandatory" | error | Selecione a opção "Reject NULL value input" |
Os editores e funcionalidades de Caixa de ferramentas abaixo estão em desuso não são compatíveis com projetos:
Funcionalidade em desuso | Estado de conversão | Comentário |
Biblioteca de imagens | atenção | As imagens são exportadas automaticamente à pasta de recursos do banco de dados |
PICTURE LIBRARY LIST, GET PICTURE FROM LIBRARY, SET PICTURE TO LIBRARY, REMOVE PICTURE FROM LIBRARY | - | Não funciona: utilize READ PICTURE FILE no seu lugar |
Opção de lista "Editável pelo usuário" | - | |
LIST OF CHOICE LISTS | - | - |
SAVE LIST | - | Erro em tempo de execução se for chamado desde um projeto |
Durante conversão, usuários e grupos 4D existentes são extraídos automaticamente do arquivo .4db e armazenados no arquivo directory.json para o projeto.
Em projetos, já que o código é armazenado em arquivos de texto de formato aberto, o gerenciamento de acesso de usuários 4D funciona diferentemente que em bancos de dados binários. Em particular:
Nota: em modo cliente-servidor, o controle de acesso de usuário funciona em bancos de dados projetos como um banco de dados binários. Entretanto, atribuição de grupos a menus, métodos e formulários não é compatível (ver nota de segurança).
Por isso, depois da conversão:
Nota de segurança: Já que bancos de dados projetos não são compatíveis com atribuição de grupos a métodos (assim como a menus e formulários), não permitem controlar fórmulas 4DACTION/ urls ou 4D Write Pro/4D View Pro através do acesso usuário 4D. Se seu banco de dados usava este tipo de controle, precisa implementar propriedades de segurança de baixo nível como o atributo “Available através das etiquetas 4D HTML e atributo URLS (4DACTION...)” para métodos e fórmulas SET ALLOWED METHODS.
Quando construir um projeto aplicação cliente-servidor que controle o acesso através de usuários e grupos, tenha certeza de copiar o arquivo directory.json na pasta Settings da pasta de dados para que esteja aidsponível na aplicação servidor resultante.
Bibliotecas de objetos personalizados já existentes (.4il em Windows ou .4dlibrary em macOS) devem ser exportadas separadamente se quisesr usá-las em seus projetos. Para saber mais veja este blog post.
A estratégia de lançamento de projetos 4D se baseia em arquivos.empacotados 4dz, onde toda a estrutura é de só leitura. Este é o caso das aplicações fusionadas, ou dos componentes compilados. Em consequência, os comandos que modificam a estrutura não funcionarão e não devem ser utilizados nas aplicações lançadas. Se forem chamadas, não farão nada ou lançarão um erro, dependendo do contexto.
Lembre que não é recomendado modificar os arquivos de estrutura nas aplicações lançadas pelas razões abaixo:
Entretanto, se for absolutamente necessário evitar o formato .4dz e manter a pasta "Projeto" tal qual, para poder modificar seus arquivos fonte nos sites lançados (o qual não é recomendável, como se explicou anteriormente), pode ser interessante a chave PackProject .
Aquí está a lista de comandos que modificam a estrutura:
Comando | Comentário |
ARRAY TO LIST | Compatível com listRef, só a sintaxe herdada (lista de seleção) modifica a estrutura |
SAVE LIST | |
Set group properties | |
CHANGE PASSWORD | |
DELETE USER | |
EDIT ACCESS | |
BLOB TO USERS | |
SET PLUGIN ACCESS | |
SET PICTURE TO LIBRARY | |
CREATE INDEX | |
DELETE INDEX | |
SET INDEX | |
IMPORT STRUCTURE | |
REGENERATE MISSING TABLE | |
Set user properties | |
SET DATABASE PARAMETER | Só certos parâmetros persistem através das sessões |
FORM Convert to dynamic | Espera um formulário binário como entrada |
ALTER TABLE (SQL) | Só o acesso local modifica a estrutura |
DROP TABLE (SQL) | Só o acesso local modifica a estrutura |
CREATE TABLE (SQL) | Só o acesso local modifica a estrutura |
CREATE INDEX (SQL) | Só o acesso local modifica a estrutura |
Quando um banco de dados é convertido para um projeto, o backup archive counter é resetado. Isso significa que o primeiro arquivo de backup em um projeto convertido vai se chamar myBase-0001, não importando o número de sequência do último arquivo no banco de dados binário.
O contador de arquivo de backup está linkado ao arquivo estrutura do banco de dados. Se renomear ou mover um arquivo 4DB file, e principalmente se o converter para um .4DProject, um novo contador backup recomeça.
Quando estiver satisfeito com seu banco de dados convertido e quiser começar a trabalhar em seu projeto, pode limpar seu diretório de trabalho:
Se quiser o arquivo de dados a ser aberto automaticamente depois do projeto ser movido para outras máquinas, pode fazer com que seja compatível com a arquitetura de projeto como descrito em developer.4d.com:
4D Blog - Binary database vs project database
4D Blog - Project databases completing the conversion
4D Blog - Project databases from binary to text-based
Criar um novo banco de dados
Produto: 4D
Tema: Gestão de arquivos 4D
Criado por: 4D v18
Manual de Desenho 4D ( 4D v20 R10)