-
Notifications
You must be signed in to change notification settings - Fork 1
[REF] Ginfes Namespaces #7
base: master_gen
Are you sure you want to change the base?
Conversation
@luismalta aqui só tem código gerado automaticamente ou tem código manual? |
@mileo os commits referentes aos Namespaces são códigos manuais. |
Precisamos ver se conseguis resolver isso de outra forma, tem bastante coisa na documentação sobre isso: https://www.davekuhlman.org/generateDS.html mas sinceramente eu não vou ter tempo de ler nos próximos dias. Se conseguir dar uma olhada. @rvalyi se vc tiver alguma sugestão. |
Eu dei uma lida na documentação e fiz alguns testes usando o genereteDS diretamente e usando o erpbrasil.edoc.gen. Em nenhum dos casos consegui achar uma opção que gerasse as definições dos namespaces e os prefixos dos namespaces automaticamente (Obs: Eu vi que tem como não usar a opção --no-namespace-defs, mas dessa forma não pareceu pegar os namespaces corretamente). Pelo que entendi a ideia do arquivo "generatedsnamespaces.py" é que seja feito manualmente mesmo, como forma de customização (https://www.davekuhlman.org/generateDS.html#adding-custom-exported-attributes-and-namespace-prefix-definitions). A princípio, pensei em ter alguma lógica no erpbrasil.edoc.gen para montar o arquivo "generatedsnamespaces.py", mas também seria necessário alterar as classes geradas para pegar os valores definidos nos dicts desse arquivo, como foi feito nesse PR (Ex: https://github.com/erpbrasil/nfselib/pull/7/files#diff-9a777888d275ea14975589327934317a00d072e33fc702fa8c3ec230c2d4c17fR3935). Logo, também não seria viável. Vocês teriam alguma sugestão que eu não enxerguei ou observações sobre alguma coias que eu possa ter entendido errado? |
A forma eu acho que seria de fazer um sub-class igual eu fiz para a NFe aqui, alias vc pode ver que tou mexendo no namespace do export: https://github.com/akretion/nfelib/blob/master_gen_v4_00/src/nfe/leiauteNFe_sub.py#L58 Agora novamente vou repetir minha posiçao: eu nao achava legal a nfselib da forma como tava ha 2 semanas gerida com um fork do generateDS de 2 anos atras, alterado sei la como, puxando o erpbrasil.edoc que pela vez dele puxava um nfelib ajeitado de forma porca tb e que ia ser um tiro no pe para fazer os merges da NFe enquanto a ideia toda da arquitetura que a gente bolou na OCA eh deixar as coisas modular: onde cada um sabe onde esta pisando sem assumir divida tecnologica pela qual nao quer topar. Bem isso era a situaçao ha 2 semanas como vcs pressionando para fazer o merge do GINFES nessas condiçoes. Ai reclamei. Porem hoje a situaçao ja esta bem melhor do lado da nfselib. Novamente a Akretion nem tem cliente que vai usar, a gente ta super ok se nao ta super limpo. Eu acho que o minimo eh deixar as coisas explicitas e tb deixar facil para pessoas contribuir como o issnet ou nota paulistana sem que cada nfse seja completamente diferente uma da outra sem qualquer nexo. Entao pode ser que da para fazer uma coisa mais perfeitinha, mas da minha parte e eu acho da Akretion na OCA, tamos bem ok com isso ja na questao da nfselib (agora falta arrumar testes minimalmente no erpbrasil.edoc). A gente nao eh extremista nao, a unica coisa eh que a ideia toda do generateDS era ter uma coisa mais razoavel do que um pysped tudo manual, mas ha 2 semanas atras tava bem borderline essa questao aqui... |
@marcelsavegnago referente ao seu comentário no erpbrasil/erpbrasil.edoc#16 Precisamos resolver este PR antes.... Tem alguns detalhes que estou verificando e uns erros que eu corrigi no #10 e #11, mas não sei se vou conseguir fazer o merge dele hoje. Vou precisar do @luismalta para entender um detalhe ai creio q só amanhã. |
Roadmap: