Decidimos fazer com que o OBJETO_INTEGRACAO seja vinculado ao ITEM_FILIAL que é o que representa os itens dentro de uma filial.
Isso permite que cada filial tenha a sua instância do Automatize PDV com seus próprios ID.
Colocamos o checkbox que liga ou desliga esta integração no cadastro das filiais na aba Configurações.
Como o vínculo entre OBJETO_INTEGRACAO e SKU será pelo ITEM_FILIAL, tivemos que colocar na tabela FILIAL a configuração se ela é integrada ao Automatize PDV ou não.
Isso é feito no campo FILIAL.AUTOMATIZE_INTEGRAR.
O trigger ITEM_FILIAL_AUTOMATIZE_PDV_AIU cuida do sincronismo quando se insere ou altera um ITEM_FILIAL de filial com integração ao Automatize PDV.
O trigger ITEM_FILIAL_AUTOMATIZE_PDV_BD cuida do sincronismo quando se exclui um ITEM_FILIAL. Quando um item já possui o ID_INTEGRACAO no lado do automatize, travo a exclusão pois ele já existe no lado do Automatize. Se não tem este ID preenchido, pode excluir sem problemas.
O trigger FILIAL_AUTOMATIZE_PDV cuida da propagação do campo AUTOMATIZE_INTEGRAR da FILIAL para os ITEM_FILIAL.
Não quero dar a opção de um ITEM_FILIAL de SKU não estar integrado. É tudo ou nada. Por isso não criei um ITEM_FILIAL.AUTOMATIZE_INTEGRAR para controlar a existência do OBJETO_INTEGRACAO para cada ITEM_FILIAL. Em resumo, se a filial está integrada ao automatize, todos os seus SKU também estarão.
Para visualizar a fila de integração. Criamos a V_SKU_AUTOMATIZE_ED e adicionamos uma gerência para ela no menu do Automatize PDV.
Nesta view, fizemos a lista dos SKU que ela exibe ser sensível à filial logada. Apesar de não termos incluído um campo para filtro ou visualização de qual filial pertence o SKU (no grupo de filial todas parecerá que o SKU está duplicado).