Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Novas bases de dados #4

Closed
henriquearake1 opened this issue Jun 4, 2021 · 9 comments
Closed

Novas bases de dados #4

henriquearake1 opened this issue Jun 4, 2021 · 9 comments

Comments

@henriquearake1
Copy link

Olá, existe a possibilidade de usar bases de dados próprias e privadas em conjunto com as da Receita Federal?

@rictom
Copy link
Owner

rictom commented Jun 8, 2021

Você pode adicionar mais vínculos criando uma tabela links.db (o modelo está no github)
image
informando o identificador de origem e de destino. Para essas ligações aparecerem no gráfico, vc pressiona shift+1, tem que alterar o parâmetro do valor mínimo, dependendo da consulta. Na versão online, coloquei uma tabela com a base de doadores de campanha do TSE, vinculando os políticos e os doadores. Para exibir outros dados, teria que alterar a rotina, uma coisa a pensar.

@rafaezio
Copy link

Olá, achei a ferramenta muito interessante e venho utilizando no meu trabalho (tanto a versão online, como a offline)
Gostaria de inserir dados de bases próprias e vi você mencionar que devo criar uma tabela links.db

Eu venho tentando inserir dados, inclusive consegui inserir dentro do CNPJ.db testando opções no código do sq_lite que você disponibilizou para conversão das bases da RFB.

Hoje vim aqui reler novamente as informações, pra ver se encontrava algum insight e notei essa pergunta.

Considerando o que você disse, queria saber como eu posso criar uma tabela links.db ou editar a mesma?
Sei que a pergunta é meio boba, mas não sou do meio e estou me aventurando na ferramenta.
Se puder, peço que me explique ou até mencionar programas que tenha que utilizar.
Desde já, agradeço a atenção.

@rictom
Copy link
Owner

rictom commented Sep 14, 2021

Oi rafaezio,

A interface ainda está meio inconsistente... Vc pode alterar o arquivo rede.ini e por na linha
base_local = base_dados_modelo.db
Isso vai habilitar umas opções
image
Usando essa opção, os itens e ligações que foram inseridos manualmente no gráfico vão ser adicionados ao arquivo base_dados_modelo.db
A planilha rede-cnpj-v03-drop teste.xlsx tem uns exemplos de como inserir itens novos e ligações. A aba Planilha4B
image
Arrastando essas células para a rede, vc vai criar itens A1, B1, com uma ligação de nome ligacao1.
A opção Banco de Dados>Exportar ao Servidor vai mandar os dados do gráfico para o banco sqlite.
Posteriormente, se vc inserir o item A1 e clicar duas vezes nele, vai buscar os dados no base_dados_modelo.db e inserir as ligações de A1 com B1 e outros.

@rafaezio
Copy link

Olá, boa tarde!

Comecei a usar a opção que me mandou, cheguei a conseguir salvar alguns testes e notei um erro.
Estou rodando a versão dos dados em desktop via cmd e o sistema não está aceitando a inclusão de qualquer célula que contenha CNPJ.
Eu notei que se eu utilizar os 14 dígitos ou o PJ_ na frente, ocorre sempre o erro 500 e não consigo inserir.:
Ex.: 12.345.678/0001-23 ou PJ_12.345.678/0001-23 não conseguem ser inseridos, apresentando sempre o mesmo erro.

Se eu usar o número incompleto ele até consegue inserir porque não reconhece como CNPJ, mas não tem como buscá-lo pois está incompleto. Teria alguma sugestão para me ajudar com isso?

Abaixo deixo o que aparece no CMD quando ocorre o erro 500 ao utilizar o seu exemplo na Planilha11
erro 500.txt

Desde já, agradeço pela atenção!

@rictom
Copy link
Owner

rictom commented Sep 15, 2021

A string está com erro, na linha 591 de rede_relacionamentos.py coloca um f na frente,
if camada==0:
#gambiarra, em camada 0, não apaga a tabela tmp_socios, por isso pega dados de consulta anterior.
query0 = f''' # <------ESTÁ FALTANDO UM F PARA O F-STRING
CREATE TABLE {tmp}_socios AS
SELECT t.cnpj, t.cnpj_cpf_socio, t.nome_socio, sq.descricao as cod_qualificacao
FROM socios t
left join qualificacao_socio sq ON sq.codigo=t.qualificacao_socio
limit 0
'''
con.execute(query0)
Faça essa alteração e veja se resolve.

@rafaezio
Copy link

@rictom deu certo sim, muito obrigado!

Depois dessa alteração, venho conseguindo inserir e me surgiu uma outra dúvida.
O que eu preciso fazer para permitir a busca em camadas nos itens inseridos no base_dados_modelo.db ? Você teria alguma sugestão?

Eu notei que o Rede não está conseguindo expandir em camadas nos itens que inseri, ele só consegue expandir se existirem camadas da base da RFB. Se a pessoa tiver mais relações e uma delas for com a RFB, dá certo. Se não, diz que não há nada na camada mesmo eu sabendo que tem.

Outra coisa que notei: se eu buscar um CNPJ da RFB vai aparecer relações que inseri, mas se fizer o contrário partindo do zero para buscar uma pessoa que inseri relacionada ao CNPJ, ela não dá resultado algum. Teria alguma ideia do porque isso acontece?

@rictom
Copy link
Owner

rictom commented Sep 28, 2021

Estava com um erro, a rotina ignorava ligação na base local que fosse com origem em Pessoa Física. Fiz uma correção, espero que resolva.

@eduardovbrito
Copy link

Olá, Bom dia.

@rictom , por favor, gostaria de importar os endereços de algumas pessoas físicas e jurídicas para verificar possíveis coincidências de localização. Como faço para importá-los no mesmo formato que você utiliza? Penso ser importante utilizar a mesma formatação para que as coincidências possam ser efetivamente identificadas. Muito obrigado.

@rictom
Copy link
Owner

rictom commented Oct 3, 2021

Carreguei o arquivo cnpj_normaliza_enderecos.py que faz a normalização dos endereços, telefones e emails. Se vc quiser adicionar novos endereços, vc terá que alterar
as linhas
having count({coluna})>1;
para
having count({coluna})>=1;
Isso vai fazer que todos os endereços de cnpj passem a aparecer no gráfico, não apenas os endereços que tenham coincidência.
Vc deverá rodar o cnpj_normaliza_enderecos.py, o que irá criar o arquivo cnpj_links_ete.db, com ligações de endereço.

Para incluir endereços adicionais, crie um arquivo excel endereco.xlsx como
image
e rode a rotina leArquivoEnderecos.
Isso vai criar registros de ligação de endereço no arquivo base_dados_modelo.db.
Para fazer efeito, inclua no arquivo rede.ini a linha
base_local = base_dados_modelo.db

Vc tem que seguir o padrão de identificador, pessoa jurídica com PJ_xxxxxxxxxxxxxx e pessoa física PF_*xxxxxx-NOME, tudo em maiúsculas.
Não testei essa parte direito, talvez precise fazer algum ajuste.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants