Skip to main content

Instalação e preparação

O arquivo instalador.php cuida dessa preparação em quatro etapas, chamadas v1, v2, v3 e v4. Cada etapa deve ser executada na ordem.

Fluxo de instalacao: v1 cria o banco, v2 cria a tabela, v3 e v4 aplicam migracoes.

Figura 4 — Fluxo de instalação: v1 cria o banco, v2 cria a tabela, v3 e v4 aplicam migrações.

Etapa 1 — Criar o banco de dados (v1)

Item Detalhe
Método instalador::v1()
Ação CREATE DATABASE IF NOT EXISTS franquia_osklen_relatorio
Retorno de sucesso setSubmit(true, "Feito")
Em caso de erro Exceção registrada via error_byexception()
URL de instalação:
/bibliotecas/6b5b2af8-ab25-4135-9551-b3cb3e055f1a/onebeat_pedidos_faturados/install
O instalador herda de biblioteca e usa a classe util para executar SQL com permissão elevada (query($sql, true)).

Etapa 2 — Criar a tabela (v2)

A tabela franquia_1beat é criada com todos os campos necessários para armazenar pedidos, recebimentos e informações da filial. Detalhes completos no capítulo 7.

Característica Valor
Motor InnoDB
Charset utf8mb4
Chave primária ID_PRODUTO_GRADE + COD_FILIAL + ID_FILIAL + ID_MOVIMENTACAO_PAI + CNPJ_FILIAL
Índice adicional IDX_1BEAT_SKU (campo SKU)

Estrutura criada pelo instalador: um banco com uma tabela principal.

Figura 5 — Estrutura criada pelo instalador: um banco com uma tabela principal.

Etapa 3 — Migração de colunas (v3)

A etapa v3 evolui a tabela para o formato atual de controle de status e quantidades cortadas. Executa em transação e é idempotente (verifica colunas antes de alterar).

Ação Detalhe
Adiciona INATIVO Coluna int (0/1) que substitui o antigo enum SITUACAO
Migra dados Registros com SITUACAO = 'DESATIVO' recebem INATIVO = 1
Remove SITUACAO Enum obsoleto removido após migração
Remove DATA_ATUALIZACAO Atualizações passam a ser rastreadas por DATA_TRANSFERENCIA
Adiciona QTDE_CORTADA Quantidade cortada por item (decimal 10,2)

Etapa 4 — Confirmação e exclusão (v4)

A etapa v4 adiciona campos de controle para o consumo pelo OneBeat. Também executa em transação e é idempotente.

Ação Detalhe
Adiciona CONFIRMADO Flag int (0/1) — indica se o pedido está apto para o OneBeat
Adiciona DATA_EXCLUSAO_MOVIMENTACAO Timestamp com a data de exclusão/cancelamento do pedido
Ambientes já instalados: se a instalação parou na v2, execute v3 e v4 para que a tabela tenha todas as colunas usadas pelo módulo atual.

Dependências

  • Classe base biblioteca (framework ISNAPP)
  • Classe util do token 12262a22-30ab-11e9-bb4c-127101af6b0d
  • Array $requires está vazio — sem dependências de outras bibliotecas versionadas
  • Bancos do tenant já devem existir: {banco}, {banco}_relatorio, {banco}_integrador
Atenção: a instalação só precisa ser feita uma vez por ambiente. Executar novamente é seguro graças ao IF NOT EXISTS, mas não é necessário em rotina.