Componente#
Componente
#
Componente(modulo: ModuloT, nome: str, filhos: ListaRegistro)
Bases: ABC
Contém informações sobre um componente de uma escrituração.
Attributes:
-
nome(str) –Nome do componente.
-
filhos(ListaRegistro) –Lista de filhos do componente.
-
modulo(ModuloT) –Módulo ao qual o componente pertence.
-
tamanho(int) –Quantidade registro que o componente representa.
-
registros(ListaRegistro) –Lista contendo todos os registros filhos recursivamente.
Parameters:
-
nome(str) –Nome do componente.
-
filhos(ListaRegistro) –Lista inicial de filhos do componente.
-
modulo(ModuloT) –Módulo ao qual o componente pertence.
-
Classes
Bloco
Bloco -
Classes
Escrituração
Escrituracao -
Classes
Registro
Registro
tamanho
property
#
tamanho: int
Tamanho do componente, sendo a quantidade de linhas que o componente e seus filhos ocupariam em uma escrituração.
Especificamente para os blocos 0 e 9 os registros 0000 e 9999 são considerados como registros filhos.
registros
property
#
registros: ListaRegistro[Registro]
Lista contendo todos os registros filhos diretos e recursivos.
__iter__
#
texto
abstractmethod
#
texto() -> str
Converte o componente para texto, da messa forma como ele estaria presente em um arquivo de escrituração, inclusive contendo quebras de linhas.
Returns:
-
str–Representação textual do componente.
buscar
#
buscar(
nome: str | None = None,
campos: dict[Chave, Valor | Iterable[Valor]] | None = None,
*,
campos_c: dict[Chave, ValorC | Iterable[ValorC]] | None = None,
campos_n: dict[Chave, ValorN | Iterable[ValorN]] | None = None,
filtro: Callable[[Registro], bool] | None = None,
recursivo: bool = True,
primeiro: bool = False
) -> ListaRegistro[Registro]
Realiza uma busca de registros válidos por todos os registros filhos do componente, de acordo com os parâmetros informados.
Parameters:
-
nome(str | None, default:None) –Nome dos registros buscados.
-
campos(dict[Chave, Valor | Iterable[Valor]] | None, default:None) –Dicionários com chaves e um ou mais valores dos campos nos registros buscados.
-
campos_c(dict[Chave, ValorC | Iterable[ValorC]] | None, default:None) –Dicionários com chaves e um ou mais valores alfanuméricos dos campos nos registros buscados.
-
campos_n(dict[Chave, ValorN | Iterable[ValorN]] | None, default:None) –Dicionários com chaves e um ou mais valores numéricos dos campos nos registros buscados.
-
filtro(Callable[[Registro], bool] | None, default:None) –Função que recebe um
Registroe retornaTruepara os registros buscados. -
recursivo(bool, default:True) –Se a busca é feita de forma recursiva.
-
primeiro(bool, default:False) –Se a busca deve ser encerrada após o primeiro registro ser encontrado.
Returns:
-
ListaRegistro[Registro]–Lista de registros contendo todos os registros válidos encontrados na busca.
Examples:
primeiro
#
primeiro(
nome: str | None = None,
campos: dict[Chave, Valor | Iterable[Valor]] | None = None,
*,
campos_c: dict[Chave, ValorC | Iterable[ValorC]] | None = None,
campos_n: dict[Chave, ValorN | Iterable[ValorN]] | None = None,
filtro: Callable[[Registro], bool] | None = None,
recursivo: bool = True
) -> Registro
Realiza uma busca pelo primeiro registro válido por todos os registros filhos do componente, de acordo com os parâmetros informados.
Parameters:
-
nome(str | None, default:None) –Nome dos registros buscados.
-
campos(dict[Chave, Valor | Iterable[Valor]] | None, default:None) –Dicionários com chaves e um ou mais valores dos campos nos registros buscados.
-
campos_c(dict[Chave, ValorC | Iterable[ValorC]] | None, default:None) –Dicionários com chaves e um ou mais valores alfanuméricos dos campos nos registros buscados.
-
campos_n(dict[Chave, ValorN | Iterable[ValorN]] | None, default:None) –Dicionários com chaves e um ou mais valores numéricos dos campos nos registros buscados.
-
filtro(Callable[[Registro], bool] | None, default:None) –Função que recebe um
Registroe retornaTruepara os registros buscados. -
recursivo(bool, default:True) –Se a busca é feita de forma recursiva.
Returns:
-
Registro–Primeiro registro válido encontrado na busca.
Raises:
-
ValueError–Se nenhum registro válido for encontrado.
Examples: