Bacen.CCS.Message (Bacen CCS v0.1.1)

The base message from CCS messages.

This part of a XML is required to any message, requested or received from Bacen's system.

This message has the following XML example:

<?xml version="1.0"?>
<CCSDOC>
  <BCARQ>
    <IdentdEmissor>12345678</IdentdEmissor>
    <IdentdDestinatario>87654321</IdentdDestinatario>
    <NomArq>ACCS001</NomArq>
    <NumRemessaArq>000000000000</NumRemessaArq>
  </BCARQ>
  <SISARQ>
    <!-- Any ACCS/CCS messsage here -->
  </SISARQ>
</CCSDOC>

Link to this section Summary

Types

t()

The base message from CCS

Functions

Returns the module name from BaseMessage body

Creates a new CCS message from given attributes.

Returns the field sequence for given root xml element

Link to this section Types

Specs

t() :: %Bacen.CCS.Message{message: term()}

The base message from CCS

Link to this section Functions

Link to this function

get_schema_from_body(message)

Specs

get_schema_from_body(t()) :: Bacen.CCS.schemas()

Returns the module name from BaseMessage body

Examples

iex> alias Bacen.CCS.Message
iex> alias Bacen.CCS.ACCS002
iex> message = %Message{message: %Message.BaseMessage{body: %ACCS002{}}}
iex> Message.get_schema_from_body(message)
Bacen.CCS.ACCS002

Specs

new(map()) :: {:ok, t()} | {:error, Ecto.Changeset.t()}

Creates a new CCS message from given attributes.

Specs

sequence(:BCARQ) :: [atom()]

Returns the field sequence for given root xml element

Examples

iex> Bacen.CCS.Message.sequence(:BCARQ)
[:IdentdEmissor, :IdentdDestinatario, :NomArq, :NumRemessaArq]