Closed fjuniorr closed 1 year ago
A primeira tentativa foi usar field_add
no build_pipeline:
build_pipeline = Pipeline(steps=[
steps.resource_transform(
name='base_orcam_despesa_item_fiscal',
steps=[
steps.field_add(name='ANO', value=2024, descriptor={'type': 'year'}, position=1)
]
)
])
Deu errado porque apesar do schema ter a coluna ANO, a propriedade path
não foi adequada e o arquivo em si não foi gerado:
{
"name": "base_orcam_despesa_item_fiscal",
"type": "table",
"profile": "tabular-data-resource",
"data": [],
"scheme": "",
"format": "inline",
"mediatype": "text/csv",
"extrapaths": [],
"hash": "sha256:a77532cb48f92905a5dbd2c4a9ab32eac4384b85807071d66b3eecca16cc6b6a",
"bytes": 1902623,
"fields": 21,
"rows": 8504,
"schema": {
"fields": [ ... ]
}
Adicionando as outras etapas na pipeline[^1]
build_pipeline = Pipeline(steps=[
steps.resource_transform(
name='base_orcam_despesa_item_fiscal',
steps=[
steps.field_add(name='ANO', value=2024, descriptor={'type': 'year'}, position=1),
steps.table_write(path='data/base_orcam_despesa_item_fiscal.csv'),
steps.resource_update(descriptor={'path': 'data/base_orcam_despesa_item_fiscal.csv'})
]
)
])
Voltei no erro encontrado em https://github.com/frictionlessdata/frictionless-py/issues/1572 e https://github.com/splor-mg/dpm/issues/28. Nesse caso se remove_field_properties
fosse um custom step talvez a pipeline funcionasse.
[^1]: Que é trabalhoso e já mostra a necessidade de um step resource_export
para transformar um recurso com a propriedade data em um recurso com a propriedade path.
WONTFIX
Vide decisão tomada em #16
Para seguir com o objetivo de https://github.com/splor-mg/cookiecutter-datapackage/issues/2 vamos precisar de inserir a coluna ano nas bases do SISOR:
Resolvendo isso tudo parece estar ok nas bases de receita e despesa: