transparencia-mg / age7

https://transparencia-mg.github.io/age7/
1 stars 2 forks source link

Relatar issue pedindo que as mensagens de erro do ForeignKey indiquem qual restrição foi violada #79

Closed fjuniorr closed 2 years ago

fjuniorr commented 2 years ago

Um recurso pode ter múltiplas restrições de chaves estrangeiras e essa mensagem vai auxiliar na identificação mais rápida do problema.

          "rowNumber": 5,
          "rowPosition": 6,
          "code": "foreign-key-error",
          "name": "ForeignKey Error",
          "tags": [
            "#table",
            "#row"
          ],
          "note": "not found in the lookup table",
          "message": "Row at position \"6\" violates the foreign key: not found in the lookup table",
          "description": "Values in the foreign key fields should exist in the reference table"
        },
fjuniorr commented 2 years ago

Essa solicitação foi implementada no PR #983 e está na versão v4.26.1 do frictionless-py.

Já usei essa versão pra investigar https://github.com/transparencia-mg/new-age7/issues/30. A diferença das mensagens:

## v4.26.0
"note": "not found in the lookup table",
"message": "Row at position \"1765313\" violates the foreign key: not found in the lookup table",
"description": "Values in the foreign key fields should exist in the reference table"
## v4.26.1
"note": "for \"id_contrato\": values \"74285\" not found in the lookup table \"dm_contrato\" as \"id_contrato\"",
"message": "Row at position \"1765313\" violates the foreign key: for \"id_contrato\": values \"74285\" not found in the lookup table \"dm_contrato\" as \"id_contrato\"",
"description": "Values in the foreign key fields should exist in the reference table"