> For the complete documentation index, see [llms.txt](https://docs.editran.onesait.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.editran.onesait.com/documentacion-editran/open-v5.3-en/linux/interfaz_generica.md).

# Editran/G Management

## Onesait Editran/G Management

When running **menug** in the Editran directory, the general menu of the Editran/G manager shown below will be activated:

![assets/image4.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-b5e3043a3867162ddf1d5ad7af6a7d3ca6b8a7ff%2Fimage4.png?alt=media)

### Operation interface

In the screens included in this document, the different types of fields are represented as follows:

#### Screens

In the Editran/G menu system screens, three areas can be distinguished:

![assets/image5.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-8257db5ef409a9e455a0c86f4b4fbf3b312efd73%2Fimage5.png?alt=media)

General Editran/G information appears in the title area:

* Current date and time (at the moment the screen is activated).
* Screen object: administrator, operator, etc.
* Version.
* Options. In this area, the different options of a menu, the parameters that the operator must enter, or the results of the requested queries may appear.
* Information. In this area, the progress information of the presentations sent by the system to the operator appears:
  * Presentation.
  * Transmission and reception statuses.
  * Progress information text.

#### Help

It has a context-sensitive help system. Thus, when the F1 or ? keys are pressed, a window appears with the help text associated with the field or screen where the cursor is at that moment.

#### Keys

In Editran/G, and within the menu, the following keys can be used:

|                       |                                                                                                                                                                             |
| --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| F1 ?                  | Context-sensitive help.                                                                                                                                                     |
| F2                    | Enters the default values for the current field, whenever possible.                                                                                                         |
| F3                    | Ends data entry for the current screen, validating all fields.                                                                                                              |
| F4                    | Enters the default values for the entire current screen, whenever possible.                                                                                                 |
| F6                    | Performs a system call to execute other commands (shell), leaving EDITRAN/G resident. To return to EDITRAN/G, the exit command must be executed.                            |
| Enter                 | Ends data entry for the current field, updating its value. If no value has been entered, it inserts the value from the last request.                                        |
| Space                 | <p>Selects the field value within a list of enumerated values:<br>A (o) B ( ) C ( )<br>or enables/disables the field value when only two values are possible:<br>D \[X]</p> |
| Esc                   | Aborts data entry and returns to the previous menu.                                                                                                                         |
| Delete                | Deletes the character before the cursor.                                                                                                                                    |
| Tab                   | Moves to the next field without updating or modifying the value.                                                                                                            |
| Arrow keys            | Move the cursor on the screen to the next/previous field or to the next/previous value within the field.                                                                    |
| <p>PgUp<br>Ctrl-U</p> | Page up.                                                                                                                                                                    |
| <p>PgDn<br>Ctrl-D</p> | Page down.                                                                                                                                                                  |

#### Selection by List

In the **Operator** and **Administrator** menus described below, the user must enter a presentation name. In these cases, if instead of a specific name a search filter with a valid mask is entered (such as \*, **?**),

the list of presentations matching the given filter will be displayed on a screen.

![assets/image6.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-5b3fbcb8be7c6a1fed2da25329d6ecf8c4385fed%2Fimage6.png?alt=media)

### Onesait Editran/G Operator

To operate on exchange presentations, select option 1 from the main EDITRAN/G MANAGER menu. The following options will be presented:

![assets/image7.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-8257db5ef409a9e455a0c86f4b4fbf3b312efd73%2Fimage7.png?alt=media)

#### Load Transmission Presentation

* This option is only allowed when the Presentation has no activity or when it is *LOADED* and the profile is configured to allow cumulative loading. In any other case, the user will be shown the message *"Presentation state incompatible with the request"*.
* If the request is accepted, the presentation changes to the temporary state *LOADING* in which the following steps are performed:
* The user program prior to transmission is executed, if it exists in the profile.
* The converter program corresponding to the version of the remote entity is executed. This program creates the buffer files that package the data to be transmitted.
* If the loading process completes successfully, the final state will be *LOADED*. If an error occurs, the corresponding message will be displayed and it will remain in the initial state. In the image, an example of a load request for a presentation for which there are no files to transmit.

#### Initialize Transmission Presentation

Each time the transmission of a presentation finishes successfully, it returns to the initial state. If for some reason a transmission is interrupted and you want to cancel it to start another from scratch, you must select this option to initialize the presentation. The only time initialization is not allowed is when the presentation is in state *TRANSMITTING*, in that case it is necessary to interrupt it first.

#### Transmit Presentation

This operation is accepted when the presentation transmission state is: inactive (*...*), *LOADED* or *INTERRUPTED*). In general, it is the only request made to transmit since, if necessary, the loading process mentioned in the previous point is performed first.

Once *LOADED* are sent to Editran/P as many messages **A1R** as transmission sessions the presentation uses. The same is done if it is *INTERRUPTED* except that in this case, transmission will resume at the point where it stopped.

The transmission state changes to *TRANSMITTING* and waits to receive the Editran/P notification of the end of the transmission(s).

In the image, a typical sequence of log messages associated with a transmission request for a presentation with a single transmission session.

#### Interrupt Transmission Presentation

Option that allows the Editran operator to interrupt the current transmission (state *TRANSMITTING*). To do so, each transmission session of the presentation is notified to interrupt via the message **EDP**. The state of the presentation temporarily changes to *INTERRUPTED*, but it can be resumed by requesting the transmission again.

#### Initialize Reception Presentation

As explained for transmissions, each time the transmission of a presentation finishes successfully, it returns to the initial state ready to perform the next one. Only if for some reason a reception *INTERRUPTED* or *TRANSMITTED* is to be canceled, it must be reset through this option.

The initialization process removes all control information from the current transmission so that the next one starts from scratch.

#### Download Reception Presentation

In the reception process, the download or transformation of the received buffer files is performed automatically. This means that this option only has to be used exceptionally when due to some failure the presentation state remains in *TRANSMITTED*. In these cases, the product log information must be analyzed to see whether it is a local error that can be corrected and the download attempted again.

In INTERRUPTED state this option is also allowed, but in this case there is an additional check that the total data has actually been transmitted.

The presentation state that will be seen in the user interface during the download process is *DOWNLOADING*. And when it finishes, it will be ready to start a new reception.

Only when the download process completes successfully is the user program after reception executed. If it fails, the exception user program will be launched indicating the error code. If the user wants actions to be performed in those cases, they must be set in the presentation profile, since by default these fields are left blank in this version.

#### Receive Presentation

Each presentation in Editran can be configured to accept the remote entity connecting and sending (server mode) or for transmission requests, both to send and receive, to be made only from the entity itself (client mode).

Whenever you want to start a connection with the remote Editran to fetch the files it has available for the presentation, this option is chosen. Depending on the state of that presentation, the response will be different.

If the presentation is idle, that is, a new reception begins, the user program configured as prior is launched, and the message is sent to each transmission session **A2R**. The presentation state changes to *TRANSMITTING* until receiving the Editran/P notification of the end of the transmission(s) (**A4P**). In state *INTERRUPTED* the behavior is the same, except that no prior user program is launched since transmission resumes at the point where it stopped, avoiding retransmitting the volume already exchanged.

In any other state, the user will be shown the message *"Presentation state incompatible with the request"* since a presentation can only have one transmission in progress. A special case is the state *TRANSMITTED* in which the buffers have been received, but the download process fails. In this case, it can be retried once the problem has been solved through the option *Download Reception Presentation*.

#### Interrupt Reception Presentation

The Editran operator can interrupt any reception in progress (state *TRANSMITTING*). To do so, each transmission session of the presentation is notified to disconnect via the message **EDR**. The state of the presentation temporarily changes to *INTERRUPTED*, but it can be resumed by requesting the reception again.

If the presentation has an exception user process configured, it is executed and the error code that arrives is **110**

#### Presentation Status Query

To query a particular presentation, type the presentation and press Enter. In the screen information area (bottom) the emission and reception status information of the requested presentation will appear.

### Control File Manager

![assets/image8.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-37a8c4086afb97df46fbfaa7a46ded9c57786f09%2Fimage8.png?alt=media)

Select the desired option and press Enter.

#### Presentation Status Query

![assets/image9.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-d8a9a0f65d0bd2923d00e59a0e8c9bcd8b37d0c6%2Fimage9.png?alt=media)\
Select the presentation to query and press Enter.

![assets/image10.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-a0c01274337153639f852399fced2d71627d6e07%2Fimage10.png?alt=media)

**Presentation Status**

It may have the following values:

|              |                                                                                                                                                                                                  |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **...**      | The presentation is ready to start a new transmission/reception. There is no transmission in progress.                                                                                           |
| LOADED       | The presentation buffer files have been generated but sending to the remote entity has not started.                                                                                              |
| TRANSMITTING | One of the presentation's transmission sessions is connected and transmitting.                                                                                                                   |
| TRANSMITTED  | Transmission has finished. In transmission, this state indicates that the remote download confirmation is still pending. In reception, it remains in this state when the download process fails. |
| INTERRUPTED  | One of the presentation's transmission sessions is interrupted.                                                                                                                                  |
|              |                                                                                                                                                                                                  |

#### Modification of Presentation Statuses

Option disabled. To reset the Presentation status, you must enter OPERATOR and select the options to Initialize transmission or reception.

#### LOG Query

![assets/image13.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-c82471a42d333f5a1d49c6e8dc345867234f1615%2Fimage13.png?alt=media)

These data are used in the selection criteria for the log query. The messages generated from the entered date are displayed.

* **PRESENTATION**: A specific one, a mask (for example, P\* to see all those starting with P) or zeros or blank for all.
* **DATE**: From a specific one or none to show the latest recorded information.
* **TIME**: Starting from a specific one within a date

![assets/image14.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-00b125ac10bf0fb907aa60cd430024b37669c9eb%2Fimage14.png?alt=media)

Once inside the log query, you will navigate through it using PgUp or Ctrl-U to view the previous page and PgDn or Ctrl-D to view the next page. With Esc you will return to the query options screen.

The presentation session, date, time, and message text are displayed.

### Onesait Editran/G Administrator

The Editran/G administrator is accessed by selecting option 3 from the main menu, and the following screen is displayed.

![assets/image15.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-08590389acf8c735829ceb065302b5085f85cb57%2Fimage15.png?alt=media)

#### Remote Entity Profile

![assets/image16.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-0414cabaeab87c3cd8589d628ddb238857fd332d%2Fimage16.png?alt=media)

Enter the desired option and the code of the remote entity, which must be the same as the one used in Editran/P.

![assets/image17.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-2c4197cbe09919564fb835328baf90a5747cbd6a%2Fimage17.png?alt=media)

* **DESCRIPTION**

  Descriptive name of the remote entity.
* **REMOTE EDITRAN/G VERSION**

  | Version | Remote entity                                 |
  | ------- | --------------------------------------------- |
  | **5.0** | If the remote entity will use Editran/G v5.0. |
  | **5.1** | If the remote entity will use Editran/G v5.1. |
  | **5.2** | If the remote entity will use Editran/G v5.2. |
  | **5.3** | If the remote entity will use Editran/G v5.3. |
* **DOWNLOAD ACKNOWLEDGMENT**
  * **Request**\
    With remote download acknowledgment, transmission will not be considered finished until the result of the download is received from the remote side or until the timeout is exceeded.
  * **Timeout**\
    Waiting time in minutes to receive the download acknowledgment. Accepts values between 1 and 99 inclusive.
* **CRYPTOGRAPHY PARAMETERS**

  In the cryptography data section, the type of security used to protect the information exchanged by this presentation is established. The options configured here only affect the handling of data during the creation of Editran buffers. Although it is recommended to use cryptography at this level of the protocol, you could also select **No** and protect only the transmission by properly configuring the Editran/P sessions.

  * **CRYPTOGRAPHY (Y/N)**

    * **Y** If you want EDITRAN/G cryptography.
    * **N** If you do not want to use EDITRAN/G cryptography

    If you select **Y** the rest of the settings that configure the cryptographic system are established.
  * **CRYPTOGRAPHY VERSION**
    * **3.0**\
      In this mode each transmitted file is encrypted with a different key when forming the buffer. The data encryption key is sent attached, protected according to the chosen authentication algorithm. With authentication **RSA**, the file is also signed to guarantee source authenticity and data integrity. The hash algorithm used is sha-1.
    * **4.0**\
      It extends the functionality of mode 3.0 by incorporating more secure symmetric-key encryption algorithms (AES). In this version the only authentication algorithm allowed is RSA, extending the key length up to 4096. The hash algorithm used in the signature is sha-256.
  * **CONFIDENTIALITY ALGORITHM**\
    Algorithm to use to encrypt the data. Leave blank if you do not want data encryption.
    * **TD3** TRIPLE-DES encryption with triple key.
    * **AES** AES-128 encryption.
    * **AE2** AES-192 encryption.
    * **AE3** AES-256 encryption
  * **AUTHENTICATION ALGORITHM**\
    Algorithm to use to encrypt the keys, mandatory if cryptography is enabled.
    * **DES** if you want to authenticate the endpoints (valid only for 3.0).
    * **RSA** if you want to authenticate the endpoints (valid for versions 3.0 and 4.0)
  * **KEY MANAGEMENT V3.0**\
    The keys used in public-key cryptography (RSA) are exchanged between the entities using the product utility designed for this purpose: Editran/GC.\
    If this field is set to **Y** (Yes), the active key of the configured subsystems is used.\
    See the user manual of *Key Management* for more information about the utility.
  * **LOCAL KEY**\
    DES auxiliary key label, private RSA, mandatory when the Cryptography version is 3.0 and authentication is enabled.
  * **REMOTE KEY**\
    DES auxiliary key label, public RSA, mandatory when the Cryptography version is 3.0 and authentication is enabled

Press Enter to create it. Press Esc to abandon it. The data values of a remote entity are passed to the presentations of that entity, when they are created, as default values.

Modifying and querying a remote entity profile are done in the same way as creating it, but the profile must already exist. The modified values are not transferred to the corresponding values of presentations of the same entity.

When deleting a remote entity profile, a screen identical to the one described first appears. Press Enter to confirm deletion and Esc to cancel.

In all options, except create, filters can be used to select the presentation from the list of possible ones.

#### Application Profile

![assets/image18.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-796873a507b62dc2b153c377420c4ba882f7b653%2Fimage18.png?alt=media)

![assets/image19.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-d2128042bda1e8ed5c68768caa12824fbe67e446%2Fimage19.png?alt=media)

* **DESCRIPTION**

  Presentation application name.
* **CONVERSION TABLES**

  These are text files edited by the user with the correspondence table between the local character encoding scheme and EDITRAN's own, for both transmission and reception. Each line will be of the following type, defining the characters in hexadecimal:

  `<editran-character> <local-character>`

  If no local translation is needed, these fields will be left blank. Otherwise, the file name is entered, but without the last character which only serves to identify the alphabet: 'A' if it is ASCII, or 'E' if it is EBCDIC. For example, assuming the user creates the file mitablaA to translate ASCII characters, only mitabla would be entered in the profile.

  > The table files must be located in Editran's subfolder *bin* .
* **USER PROGRAMS**

  Called by Editran/G before and after sending and receiving. The exception program is executed whenever an error occurs in the transmission. These programs will be provided by the user when they want to use this feature to integrate the product with other systems. The Editran software comes with some sample scripts that can be used as a template.

  These fields are left blank by default. The exception program **utils/U\_EXCEPCION** can be used if you want to leave a record in the log files of the transmissions that are interrupted.

Press Enter to create it. Press Esc to abandon it. The data values of a presentation application are passed to the presentations of that entity, when they are created, as default values.

Modifying and querying a presentation application profile are done in the same way as creating it, but the profile must already exist. The modified values are not transferred to the corresponding values of presentations of the same entity.

#### Presentation

![assets/image20.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-b0ceb08a5b8659d55a4d9924974451d0b12e7198%2Fimage20.png?alt=media)

Enter the desired option and the codes of the remote entity and the presentation application. If those profiles already exist, the screens will use their data as a template; if not, the user must fill them in at this time.

To navigate through them, use the arrow keys, Esc to cancel creation, Enter to advance and to perform the creation, and F3 to finish data entry for the current screen, validating all fields. The entered data are validated in all cases except when Esc is pressed.

* **Presentation identification data**

  ![assets/image21.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-e3555ee25b61af813a64a73c0e1fe4738167ffcd%2Fimage21.png?alt=media)
* **Remote data**

  ![assets/image22.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-90fbbf5cc5babee56383db58f790341d6b084a6f%2Fimage22.png?alt=media)

  They are described in the section **REMOTE ENTITY PROFILE.**
* **Application Data**

  ![assets/image23.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-586c3f16bd5bf4184afb68dbcb7b5e598f1e659b%2Fimage23.png?alt=media)

  In the section **APPLICATION PROFILE** general data and User programs are described.
* **EDITRAN FF - CHECK SIGNATURES**

  If this functionality is activated (with option Y), during the Editran/G loading process a service from Editran/FF is called that communicates the list of files that comply with the signature workflow established in the profile of an FF Application.

  In the section [Sending operation using integrated Editran/FF](#operación-de-envíos-utilizando-editranff-integrado) this option is explained in more detail.
* **Presentation Data**

  ![assets/image24.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-9f6f60eeda8d82055e67f240932c1412afa94513%2Fimage24.png?alt=media)

  * **LOAD TYPE**\
    With cumulative load type, the buffer can be reloaded with new application files, provided transmission has not started. Cumulative load requires using a single transmission session.
    * **N** Single load per transmission.
    * **A** Allows loading several times before transmitting.
  * **NUMBER OF TRANSMISSION SESSIONS**\
    Number of EDITRAN/P sessions associated with the editran/G presentation. Next, you must specify which ones. These sessions must have been created previously.\
    All EDITRAN/P sessions will have the same local and remote codes as the editran/G presentation.
  * **SPLIT CRITERION (V/S/F/N)**\
    Only if several transmission sessions are to be used for the presentation. The following values can be specified:
    * **V** The emission application information would be distributed equally among the different buffers, with a minimum of 400,000 bytes per buffer. This means that some of the transmission sessions defined for it might not be used in the presentation.
    * **F** Distribution by file. Successive complete files would be assigned to each transmission buffer.
    * **N** No splitting is performed.
  * **Editran/P APPLICATIONS**\
    Names of the Editran/P applications corresponding to the presentation's transmission sessions.\
    The table will be filled with as many elements as indicated by the number of sessions field.\
    It is validated that the entered sessions exist.
* **File data**

  ![assets/image25.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-5832055951a3fdd39cc406b2bd7a9a4f11167872%2Fimage25.png?alt=media)

  * **PRESENTATION TRANSMISSION FILES**\
    The section consists of 7 columns:
    * First column: **COM**\
      Refers to the compression of the file or files we want to send and may have the following values:
      * **F** Compression enabled.
      * **N** Compression disabled.
    * Second column: **FMT**\
      Refers to the format of the files we want to send and may have the following values:
      * **F** Fixed. Application files are read as fixed-length records. The length is determined by the next parameter.\
        In this format there is the optional possibility of removing delimiters (line break).
      * **V** Variable. Application files are read line by line, the line delimiter being CR-LF on PCs and CR on UNIX machines. These delimiter characters are not sent to the remote system; in the remote conversion process the reverse operation is performed, inserting the appropriate line delimiter characters for the receiving system. This is the format that should be used to transmit text files between heterogeneous environments (UNIX PC, UNIX CICS, etc.).
      * **H** Hybrid. Files are read as variable and sent to the remote system as fixed, filling each line with spaces until the record length defined in the field **LONG**.
      * **B** Binary. Transparent mode (without transformations).\
        Only for homogeneous environments if the remote version is higher than 4.1.
    * Third column: **LONG**\
      Refers to the record length of the file or files we want to send.
    * Fourth column: **DEL**\
      Only applies to files with Fixed format. In these cases it indicates whether each record ends with a line break or not, and whether it is Unix format (**U**) or Windows (**D**).
    * Fifth column: **ALF**\
      Refers to the alphabet of the file or files we want to send and may have the following values:
      * **A ASCII**. The data in the file or files are in ASCII.
      * **E EBCDIC**. The data in the file or files are in EBCDIC.
    * Sixth column: **TRA**\
      Refers to whether we want to translate the alphabet of the files we want to send and may have the following values: >

      * **Y** if translation is desired.

      * **N** if translation is not desired.

      > Currently there is a wide variety of encodings that extend US-ASCII (codes 0 to 127), so it must be taken into account that for correct display of the file at both ends it is necessary for both platforms to work with compatible tables. For example, if your platform works with ISO 8859-1, which includes the 'ñ' character among others, when translating it to EBCDIC it is necessary for the mainframe environment to have the equivalent code page so that it is displayed in the same way.
    * Seventh column: **NAME**\
      Refers to the path where the file or files to be sent are located.
  * **RECEIVING DESTINATION**\
    It is the path where the received files will be left.\
    As the file name, a mask can be specified using the wildcards discussed below.\
    During the download, the file names are transformed one by one by applying the given format. Characters not allowed by the operating system (\\, /, :, ?, \*, ", <, >, etc.) cannot be defined.

    > Wildcards can be used in receiving. See the section [receiving destination wildcards](#comodines-destino-de-recepción) of the manual.
  * **DELIMITER (D/U/N):**
    * **D** Downloads fixed files with the Windows delimiter.
    * **U** Downloads fixed files with the Unix delimiter.
    * **N** Downloads fixed files without adding a delimiter.
  * **TRANSLATE (A/E/N):**
    * **A** Translated to ASCII if received in EBCDIC.
    * **E** Translated to EBCDIC if received in ASCII.
    * **N** Not translated.

#### Generic profile query

![assets/image26.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-8c005b2b42e619cf6a853f278f74d76775a83252%2Fimage26.png?alt=media)

**Remote entities**

A list of remote entities is obtained with the data of the Presentations in which they are being used. If they occupy more than one screen, you can navigate between them with PgUp or Ctrl-U for the previous page and PgDn or Ctrl-D for the next page. Press ESC to return to the generic queries menu.

![assets/image27.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-2d70ca93ae29d55ce330a27d1004fef8a5b3c074%2Fimage27.png?alt=media)

**Applications**

A list of applications is obtained with the data of the presentations in which they are being used. If they occupy more than one screen, you can navigate through them with PgUp or Ctrl-U for the previous page and PgDn or Ctrl-D for the next page. Press Esc to return to the generic queries menu.

![assets/image28.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-fa778cfe58e56536a20bd45bc4f4e98b43d289ef%2Fimage28.png?alt=media)

**Presentations**

A list of presentations is obtained with their description. If they occupy more than one screen, you can navigate between them with PgUp or Ctrl-U for the previous page and PgDn or Ctrl-D for the next page. Press Esc to return to the generic queries menu.

![assets/image29.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-9a98d61fb16d594404d1496257cbaef3ac4cc853%2Fimage29.png?alt=media)

### Sending operation using integrated Editran/FF

#### Editran/G configuration to connect to the Editran/FF server

To use the functionality for sending files signed by FF, the Editran environment must be configured to communicate with the available Editran/FF server.

In Unix, this configuration is found in the folders **cfg** and **bin** of the product, where the data that allow communication between Editran and the FF server are established.

* In **cfg**\
  File: **distributed.cfg**

  ![assets/image30.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-947ec7c2cb3c30de5c10c21feb3aeb35dedb17f0%2Fimage30.png?alt=media)

  It must be configured with the IP address or *hostname*, plus the listening port of the machine where the Editran/FF server is installed (the default port is the **8300**).

  If the FF server is installed on the same machine where Editran was installed, the IP address to specify will be: 127.0.0.1:8300
* In **bin**\
  File: **EDItran**

  ![assets/image31.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-3766f33b1b47ef49760da7f2dca387c2f7c118ee%2Fimage31.png?alt=media)

  In this variable, the sending directory configured globally on the Editran/FF server will be indicated, where Editran will look for signed files ready to send.

#### Sending signed files with Editran/FF

An Editran/G presentation must be configured so that it uses as data source the Editran/FF applications that have files available to be sent.

To do this, you must create a new presentation in Editran/G or edit an existing one.

Once in menuG, in the application data of the presentation profile, we have the option to "**Check the signatures (Y/N)**":

![assets/image32.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-cc9fe3c39c7da0fbdb8a9637a3c6e8566e061723%2Fimage32.png?alt=media)

If communication with the FF server is correct, the FF Applications selection screen will appear, similar to the file selection dialog for sending. If communication has not been possible, an error message will appear notifying the problem.

Instead of files, the Editran/FF applications that have been configured for sending with Editran will be indicated.

As many applications as desired can be indicated to be sent through the same Editran/G presentation:

![assets/image33.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-c10a320754e92b6f9c60b63f00dc3ea4b2ae301a%2Fimage33.png?alt=media)

### Additional functionality

#### Transmitted files report

The generation of the daily transmitted files report is an optional functionality that can be enabled by the system administrator at application level. That is, if the report is enabled, it will record the files transmitted by all Presentations.

To configure this functionality, the *EDItran* application runtime environment must be modified. With the service stopped, edit the script to modify the following lines:

![assets/image34.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-6ef6b3ca5356eff32e89019da2aa444c6e4067fc%2Fimage34.png?alt=media)

The environment variable *EDI\_REPORT\_PATH* must be set with the path where the generated reports are to be left. That path must be the absolute path of an existing directory. For example:

![assets/image35.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-a4a7f24ac9aff29fe2610d9ca5dc1358fee19f82%2Fimage35.png?alt=media)

The name of the generated reports is *FicherosEditran.\<yyyymmdd>.txt*, where yyyymmdd is the current year, month, and day. They are csv files with columns separated by ','.

Additionally, in the script *EDItran,* the level of detail of the data shown in the reports can be set using the EDI\_REPORT\_LEVEL variable:

![assets/image36.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-62a7e90ce1299415fa4e1a58b60646b4c6978ce3%2Fimage36.png?alt=media)

If this variable is not specified, Editran will take the value 0 by default.

To give it another value, simply edit the script as follows:\
![assets/image37.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-cb3ea9376105eec7c852b9bd61166fb443a52890%2Fimage37.png?alt=media)

Below are the fields shown in the daily transmitted files report:

| **Field**               | **Minimum EDI\_REPORT\_LEVEL value to show it** |
| ----------------------- | ----------------------------------------------- |
| Date-time               | 0                                               |
| Sending/receiving       | 0                                               |
| Presentation            | 0                                               |
| Local code              | 0                                               |
| Remote code             | 0                                               |
| Application             | 0                                               |
| File path               | 0                                               |
| Format                  | 0                                               |
| Alphabet at source      | 0                                               |
| Compressed              | 0                                               |
| Encrypted               | 0                                               |
| Size in bytes           | 0                                               |
| Delimiter               | 1                                               |
| Alphabet at destination | 1                                               |
| Signed                  | 1                                               |
| Source file name        | 1                                               |
| Record length           | 1                                               |
| Number of records       | 1                                               |
| Concatenated file       | 1                                               |

## Appendices

### Receiving destination wildcards

The wildcards that can be specified are:

| Wildcard | Description                                                    |
| -------- | -------------------------------------------------------------- |
| **+**    | If the file exists, append to the previous one                 |
| **-**    | If the file exists, destroy the previous one                   |
| **%o**   | Original name of the downloaded file (including the extension) |
| **%D**   | Day (DD)                                                       |
| **%M**   | Month (MM)                                                     |
| **%Y**   | Year (YYYY)                                                    |
| **%h**   | Hour (hh)                                                      |
| **%m**   | Minutes (mm)                                                   |
| **%s**   | Seconds (ss)                                                   |
| **%c**   | File counter (c)                                               |

In the wildcards **%Y** and **%c** you can define the precision of the digits to be written by adding a number before the wildcard letter. For example, if %4c is defined, 4 digits will be written.

**Receiving destination examples**

In the examples, the remote entity sends us 4 files.

**Case 1**\
We configure the following receiving destination:\
`../target_directory or ../target_directory/%o`

| **Sent files** | \*\*Downloaded files       |
| -------------- | -------------------------- |
| a.txt          | ../target\_directory/a.txt |
| b.txt          | ../target\_directory/b.txt |
| c.txt          | ../target\_directory/c.txt |
| d.txt          | ../target\_directory/d.txt |

If any of the files existed before downloading, it would be destroyed by the new downloaded file.

**Case 2**\
We configure the following receiving destination:\
`../target_directory/+bank_%D-%M-%Y_%h-%m-%s`

| Sent files | **Downloaded files**                            |
| ---------- | ----------------------------------------------- |
| a.txt      | ../target\_directory/bank\_17-10-2014\_14-00-01 |
| b.txt      | ../target\_directory/bank\_17-10-2014\_14-00-02 |
| c.txt      | ../target\_directory/bank\_17-10-2014\_14-00-03 |
| d.txt      | ../target\_directory/bank\_17-10-2014\_14-00-03 |

Several files are downloaded, and the day, month, year, hour, minute, and second are defined for them, and in the case of files c.txt and d.txt, since both are downloaded in the same second, the content of bank\_17-10-2014\_14-00-03 would be that of those files.

**Case 3**\
We configure the following receiving destination:\
`../target_directory/bank-%D-%M-%Y_%4c`

| **Sent files** | **Downloaded files**                       |
| -------------- | ------------------------------------------ |
| a.txt          | ../target\_directory/bank\_17-10-2014-0000 |
| b.txt          | ../target\_directory/bank\_17-10-2014-0001 |
| c.txt          | ../target\_directory/bank\_17-10-2014-0002 |
| d.txt          | ../target\_directory/bank\_17-10-2014-0003 |

Several files are downloaded in the same session and each one is assigned the day, month, and year and a 4-digit counter (%4c).

**Case 4**\
We configure the following receiving destination:\
`../target_directory/bank_%o`

| **Sent files** | **Downloaded files**             |
| -------------- | -------------------------------- |
| a.txt          | ../target\_directory/bank\_a.txt |
| b.txt          | ../target\_directory/bank\_b.txt |
| c.txt          | ../target\_directory/bank\_c.txt |
| d.txt          | ../target\_directory/bank\_d.txt |

The downloaded files will have the defined name plus the source name (including the extension).

**Case 5**\
We configure the following receiving destination:\
`../target_directory/+unique_file`

| **Sent files** | **Downloaded files**              |
| -------------- | --------------------------------- |
| a.txt          | ../target\_directory/unique\_file |
| b.txt          | ../target\_directory/unique\_file |
| c.txt          | ../target\_directory/unique\_file |
| d.txt          | ../target\_directory/unique\_file |

The content of the downloaded file will be that of files a + b + c + d, due to the +.

**Case 6**\
We configure the following receiving destination:\
`../target_directory/unique_file`

| **Sent files** | **Downloaded files**              |
| -------------- | --------------------------------- |
| a.txt          | ../target\_directory/unique\_file |
| b.txt          | ../target\_directory/unique\_file |
| c.txt          | ../target\_directory/unique\_file |
| d.txt          | ../target\_directory/unique\_file |

Since the files are not differentiated, they will be overwritten as they are downloaded, leaving the final content as that of file d.txt.

**Case 7**\
We configure the following receiving destination:\
`../destination-directory/%o_%D-%M-%Y`

| **Sent files** | **Downloaded files**                   |
| -------------- | -------------------------------------- |
| a.txt          | ../target\_directory/a.txt\_17-10-2014 |
| b.txt          | ../target\_directory/b.txt\_17-10-2014 |
| c.txt          | ../target\_directory/c.txt\_17-10-2014 |
| d.txt          | ../target\_directory/d.txt\_17-10-2014 |

Several files are downloaded in the same session and each one is assigned the original name defined by the remote side (including the extension), the day, month, and year.

### User Programs

These programs will be provided by the user and will be called during the presentation processes.\
Depending on when they are executed, there are three types of user programs:

#### Before Sending/Receiving.

If the user sets any program in the configuration, it will be the first step performed when a send begins. These programs are invoked with the following arguments:

* **0** Program name.
* **1** Presentation.
* **2** Indicates sending (E) or receiving (R).
* **3** Local Code
* **4** Remote code
* **5** Application

#### After Sending/Receiving.

If the user sets any program in the configuration, it will be launched when the transmission finishes successfully.\
Each time a presentation sends or receives, a file is generated with the list of transmitted files.\
This file is the one recommended for integration with other applications. It could be used, for example, to store the paths of transmitted files in a database.

These programs are invoked with the following arguments:

* **0** Program name.
* **1** Presentation.
* **2** Indicates sending (E) or receiving (R).
* **3** Local Code
* **4** Remote code
* **5** Application
* **6** Absolute path of the file that stores the list of sent or received files. Each sent/received file listing file has the following fields separated by ',':

  | **File field**    | **Minimum EDI\_REPORT\_LEVEL value to show it** |
  | ----------------- | ----------------------------------------------- |
  | File path         | 0                                               |
  | Format            | 1                                               |
  | Record length     | 1                                               |
  | Number of records | 1                                               |
  | Concatenated file | 1                                               |

**Example:** Post-send script that deletes the sent files (with EDI\_REPORT\_LEVEL=0 format)

```bash
#!/bin/sh
#Arguments:
# $1 - Presentation
# $2 - Direction
# $3 - Local code
# $4 - Remote code
# $5 - Application
# $6 - Path of the file with the list of transmitted files

EXIT_STATUS=""
echo "################################################################################"
echo "Sent files are deleted by [ $0 ]"
echo "`date`"
echo "PRESENTATION: $2-$1 ($3-$4-$5)"
echo "FILES: [$6]"

while read fclave
do
  if [ "$fclave" != "" ]; then
    echo "File $fclave deleted"
    rm "$fclave"
fi
done < $6

EXIT_STATUS="$?"
echo "EXIT CODE : ${EXIT_STATUS}"
echo "##############################################################"
exit ${EXIT_STATUS}
```

**Example:** Post-send script that deletes the sent files (with EDI\_REPORT\_LEVEL=1 format)

```bash
#!/bin/sh
#Arguments:
# $1 - Presentation
# $2 - Direction
# $3 - Local code
# $4 - Remote code
# $5 - Application
# $6 - Path of the file with the list of transmitted files

EXIT_STATUS=""
echo "################################################################################"
echo "Sent files are deleted by [ $0 ]"
echo "`date`"
echo "PRESENTATION: $2-$1 ($3-$4-$5)"
echo "FILES: [$6]"

awk -F',' '{if ($1 != "") print $1}' $6 | while read fclave
do
    if [ -f "${fclave}" ]; then
       rm "${fclave}"
       echo "File $fclave deleted"
    fi
  fi
done

EXIT_STATUS="$?"
echo "EXIT CODE : ${EXIT_STATUS}"
echo "##############################################################"
exit ${EXIT_STATUS}
```

#### Exception.

If the user sets any exception program in the configuration, it will be launched when any error occurs during sending or receiving.\
In this way, Editran could be integrated with some alert mechanism developed by the user.\
These programs are invoked with the following arguments:

* **0** Program name.
* **1** Presentation.
* **2** Indicates sending (E) or receiving (R).
* **3** Result
* **4** Local Code
* **5** Remote code
* **6** Application

**Compatibility with previous versions**

The parameters that Editran passes to user programs have changed in this version.\
**It is recommended to adapt the programs developed in previous versions when upgrading the product.**\
If this is not possible, you can continue working with the old programs by configuring the installation to work in compatible mode. This mode is set by adding the following lines in the script **EDItran** the following lines:

```bash
#################
#EDI_GUPGRADE: Compatibility with user programs from previous versions
EDI_GUPGRADE=1
export EDI_GUPGRADE
```

### Commands

#### gload53

**Description**\
Command for processing the application files to be sent. Processing consists of transforming and packaging the application files into the file *buffer.* This command is invoked by the process **editrang** when the remote version of the profile is 5.3.

**Syntax**

```
gload53. EDItran/G conversion command.
Usage:
gload53 <presentation>
        <presentation> : Presentation identity.
```

#### gload\[50|51|52]

**Description**\
Application file processing command when the remote version of the profile is lower than 5.3.

**Syntax**

```
gload[50|51|52]. EDItran/G conversion command.
Usage:
gload[50|51|52] <presentation>
                <presentation> : Presentation identity.
```

#### gunload53

**Description**\
Command for processing the received application files.\
Processing consists of unpacking and transforming the received application files into the file *buffer*.\
This command is invoked by the process **editrang** when the remote version of the profile is 5.3.

**Syntax**

```
gunload53. Download command in EDITRAN/G.
Usage:
gunload53 <presentation>
          <presentation> : Presentation identity.
```

#### gunload\[50|51|52]

**Description**

Application file processing command when the remote version of the profile is lower than 5.3.

**Syntax**

```
gunload[50|51|52]. Download command in EDITRAN/G.
Usage:
gunload[50|51|52] <presentation>
                  <presentation> : Presentation identity.
```

#### traduct

**Description**

This command allows translating files from **ASCII-EBCDIC** and from **EBCDIC-ASCII**.

If you want to change certain characters in the standard tables, the following tables must be generated:

* Modifications to the table **ASCII->EBCDIC** must be written in the file **toebcdic.tbl**.
* Modifications to the table **EBCDIC->ASCII** must be written in the file **toascii.tbl**.

The modifiable characters are the non-alphanumeric ones (a-z, A-Z, 0-9).

The characters specified in the text files must be written in hexadecimal format.

Each modification must be written on one line.

On each line, the character to be translated is written followed by the translated character, separated by a blank space.

**Example:**\
To modify the translation of the characters Ñ ñ Ç ç (hexadecimal \[decimal] in\
ASCII: A5\[165], A4\[164], 80\[128] and 87\[135] respectively), currently translated to EBCDIC by: AC, 8F, 66 and 8E respectively, we want them translated by: 7B, 6A, 68 and 67.\
The following must be written in the file "toebcdic.tbl":\
A5 7B\
A4 6A\
80 68\
87 67\
In version 5.0, the standard ASCII/EBCDIC tables used by EDITRAN have been changed. To make upgrading easier, in cases where local conversion tables had to be used, the new -m option has been included.\
With this option, by specifying the name of the file that stores the current modifications, it is updated with the appropriate values for the new tables.

**Example:**\
Suppose an entity had the following ASCII table in reception tableA to adapt the characters Ñ ñ to its environment:\
A4 F1\
A5 D1\
When executing the command:

```
traduct –m r tablaA tabla5A

A  -> E(41) -> A(50)    A
==========================
a4 -> 6a    -> f1  =    f1
a5 -> 7b    -> d1  =    d1
```

Each line of the output is interpreted as follows: the ASCII character 0xA4 that, according to the old translation tables, resulted from the EBCDIC character 0x6A, in version 50 would be received as 0xF1, which is the same as the final character of the local table.\
If the new received character is the one we expect, as in this case, the line of the new local table *tabla5A*.

**Syntax**

```
traduct. ASCII-EBCDIC translation utility.

Usage : traduct -a|e source destination
Usage : traduct -t a -t e -c -d -o -x
Usage : traduct -v
Usage : traduct -m [e|r] tableIn [tableOut]
Where :
    -a     : Translation to ASCII.
    -e     : Translation to EBCDIC.
    source : File to translate (stdin by default)
    destination: Translated file (stdout by default)

    -t a   : Print the ASCII table.
    -t e   : Print the EBCDIC table (default).
    -c     : Character.
    -d     : Decimal.
    -o     : Octal.
    -x     : Hexadecimal (default).

    -v     : Verification

    -m [e|r]: Migration of local conversion table send/receive
    tableIn : File with the table to migrate
    tableOut: File with the migrated table
```

#### igacmd

**Description**

This command establishes a communication mechanism between applications or user programs and editran/G, allowing operations to be invoked unattended and automatically.\
It is the equivalent command to the EDITRAN/G manager **menug** interactive.\
It allows procedures associated with sends and/or receives to be built, with chains of new sends or receives.

**Syntax**

```
igacmd. EDItran/G requester in command mode.

Usage   :    igacmd -o <operation> -p <presentation> [-v] [-w]
Where :
    -o <operation>     : Operation to perform.
        InitE    - Initialize send
        LoadE    - Load send
        Send     - Send
        EndE     - Interrupt send
        InitR    - Initialize receive
        UnloadR  - Unload receive
        Recv     - Receive.
        EndR     - Interrupt receive.
    -p <presentation#> : Presentation identifier.
    -v                 : Verbose mode.
    -w                 : Wait for request completion.
```

**Example**\
It is desired that at the end of the reception of a given presentation an emission be generated to the remote editran system whose presentation is PRUEBA.\
To do this, the user file after reception will include the following call:\
`igacmd -o Send -p PRUEBA -v`

When editran/G invokes the automation associated with the end of reception (previous command), igacmd will in turn send a signal to editran/G indicating that the user has requested a start-of-emission operation for presentation PRUEBA.

**Return codes**

In general, the return codes for the command are those listed in the section [editrang error codes](#códigos-de-error-editrang) and which correspond to the result of the operation performed by EDITRAN/G when the request is made with the -w option.\
In addition, there are other values to indicate communication problems with EDITRAN/G.

| Code | Description                                              |
| ---- | -------------------------------------------------------- |
| 0    | Successful result                                        |
| 60   | Incorrect syntax                                         |
| 61   | EDITRAN/G system not started                             |
| 62   | Error communicating with EDITRAN/G when sending request  |
| 63   | Error communicating with EDITRAN/G when receiving result |

#### menug

**Description**

This command allows direct access to the editran/G manager menu.

#### estcmd

**Description**

This command is used to find out the status of an editran/G presentation.

**Syntax**

```
estcmd. Utility for printing EDItran/G presentation status.

Use   : estcmd E|R [presentation]
<Options>
        E|R             : Emission or reception.
        [presentation#] : Presentation identifier.
```

**Return codes:**\
Numeric value from 0 to 6 corresponding to the following states

| Code | Status       |
| ---- | ------------ |
| 0    | NO ACTIVITY  |
| 1    | LOAD/UNLOAD  |
| 2    | LOADED       |
| 3    | TRANSMITTING |
| 4    | TRANSMITTED  |
| 6    | INTERRUPTED  |

#### igaperfi

**Description**

This command is used to manage editran/G profiles in command mode. You can consult detailed information about this utility in the document **Profile Manager**.

#### modiperfi

**Description**

The purpose of the command ***modiperfi*** is to provide the user with a menu-free administration mechanism suitable for unattended administration. With this command the user can modify, simultaneously, as many parameters as desired in multiple sessions **editran/P** or in different presentations **editran/G**, as well as deregister the profiles.

More information on usage mode in the document **Profile Manager**.

### Data files

#### CFG subfolder

* **editrang.cfg**\
  editran/G configuration file. Stores the presentation profiles. It is not an editable file; it should only be modified from the user interface.
* **ckds.des**\
  File that stores the auxiliary keys for exchanging session keys in DES encryption in version 2.2.

#### BIN subfolder

* **editrang.msg**\
  File where the messages shown to the Editran/G operator are stored.
* **editrang.hlp**\
  File where the help texts for the interactive command are stored **menug**.

**SL subfolder**

* **licencia.dat**\
  editran license file. It is used to control the contracted functionality. If this file does not exist or its content is altered, Editran cannot be started.

**utils subfolder**

* **U\_PREVIOUS, U\_AFTER, U\_EXCEPTION**\
  In this folder, scripts are provided as examples for integration programs that users develop as pre- and post-processes. Functionally they only print log messages that will remain in *editrang.out*.

  > ℹ️ *Note:* It is recommended that new user programs be placed in this subfolder or that a specific one be created containing only those files.
* **PSTEMIGC, PSTRECGC**\
  Scripts that automate RSA key exchange. They are the user programs after emission and reception of the presentation used by Editran/GC for the exchange of RSA keys.

#### LOG subfolder

* **editrang.log**\
  File created with the command **makelog**. It cyclically stores the summary of the operations performed by Editran/G, so once the maximum number of entries is reached it overwrites the oldest one.\
  It can be consulted from the Editran/G menu and through the command ***printlog*** described in the user manual of *Editran/P*.
* **editrang.out**\
  File where all outputs produced by Editran/G and the procedures and commands this process launches are recorded. This is the file where the user will find the details of errors produced during the load and unload processes.

  > ⚠️Important: Files with the "out" extension are plain text and could change from one version to another. Applications should not process that file to extract information from it as they could stop working with product updates.

  Some cases are listed below as examples.

  Recorded information of a successful emission:

  ```
  **********************************************************************
  CONVERSION TO EMISSION OF THE PRESENTATION [W00000010-L00000010-PRUEBA]
  DATE-TIME: [04/12/2025 17:35:03]
  VERSION: [53]

  #    C F A T D L.Reg Modification date  Size      Sent      Loaded      Name
  _________________________________________________________________________________________________________
  1    N B N N   04020 31032023 115853 000000000024 000000000024 000000000024 /opt/Ficheros/Emitir/1234_30TDES3.txt
  RESULT:  [0]
  **********************************************************************
  ```

  Output of an emission that fails because there are no pending files, and configured with the exception program provided in the installation.

  ```
  **********************************************************************
  CONVERSION TO EMISSION OF THE PRESENTATION [TEST]
  DATE-TIME: [04/02/2025 10:25:40]
  VERSION: [53]
  RESULT: CFG_NO_FILES [90]
  **********************************************************************
  ################################################################################
  EXCEPTION USER SCRIPT: ./utils/U_EXCEPTION.
  Tue 4 Feb 10:25:40 CET 2025
  PRESENTATION : E-TEST (000000010-000000020-PRUEBA)
  RESULT : [0090]
  EXIT CODE : 0
  ################################################################################
  ```

  **Editran/G output differentiated by Presentation**

  There is the possibility of having the above information separated into files by Presentation. To do this, it will be enough for the user to uncomment the following lines of the script *EDItran* to set as environment variable *EDI\_MLOG* before starting the service.

  ![assets/image38.png](https://780925830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiQfLim2uDaLOZRkgWkOk%2Fuploads%2Fgit-blob-46ec98fe1c65b2f2a2f8991e6b096f8919ac78af%2Fimage38.png?alt=media)

  In this case, the files are left in the subdirectory ***log*** of the installation, and are named ***\<presentation>.log***. Unlike what happens with the file *editrang.out,* these files can be moved or deleted without needing to stop Editran. You only need to make sure that that Presentation has no transmissions in progress.

### Codes and messages to the operator

#### Editran/G Messages

These codes are the ones reflected in the file **editrang.log** to indicate the different states a presentation goes through. On the Editran/G operator screen, they appear in the form of messages.

Next, these codes and messages are detailed, giving a brief explanation or recommended action, as appropriate:

| MESSAGE                                                      | EXPLANATION/RECOMMENDED ACTION                                                                                                                                                                                                                            |
| ------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Emission load request                                        | An emission presentation load request has been made                                                                                                                                                                                                       |
| Emission request                                             | An emission presentation request has been received.                                                                                                                                                                                                       |
| Emission end request                                         | A request has been made to interrupt the emission in progress of the presentation.                                                                                                                                                                        |
| Emission initialization request                              | A request has been made to cancel the emission in progress of the presentation                                                                                                                                                                            |
| Emission cancelled                                           | The request to initialize the emission of the presentation has been processed successfully.                                                                                                                                                               |
| Reception installation request                               | A request has been made to cancel the reception in progress of the presentation.                                                                                                                                                                          |
| Reception cancelled                                          |                                                                                                                                                                                                                                                           |
| Reception unload request                                     | A reception presentation unload request has been made.                                                                                                                                                                                                    |
| Reception request                                            | A presentation reception request has been received.                                                                                                                                                                                                       |
| Reception end request                                        | A request has been made to interrupt the reception in progress of the presentation.                                                                                                                                                                       |
| The presentation is initialized                              | A request has been made to initialize an emission or reception and the presentation has no pending transmission.                                                                                                                                          |
| The presentation is being transmitted                        | An emission/reception request has been made for a presentation that is already being transmitted.                                                                                                                                                         |
| Presentation status incompatible with the request (\<state>) | An incompatible request has been made with the status of the presentation. For example: request to initialize an emission presentation that is being transmitted.                                                                                         |
| The presentation profile does not exist                      | Register the corresponding presentation profile in the editran/G administrator.                                                                                                                                                                           |
| The session profile does not exist                           | Register the corresponding session profile in the editran/P administrator.                                                                                                                                                                                |
| Request emission to editran (A1R) *\<session>*               | editran/P is notified to start the emission of a transmission session of the presentation.                                                                                                                                                                |
| Request end of emission to editran (EDP) *\<session>*        | editran/P is notified that a transmission session of the presentation be interrupted.                                                                                                                                                                     |
| Emission interrupted                                         | The request to end the emission of the presentation has been processed successfully.                                                                                                                                                                      |
| Correct and completed emission conversion                    | The buffer loading process to be emitted has been carried out successfully.                                                                                                                                                                               |
| Correct and completed reception converter                    | The process of unloading the received buffers has been carried out successfully.                                                                                                                                                                          |
| Error in emission conversion process                         | The loading of buffers to be emitted cannot be performed. Consult the editrang.out file for more details on the error.                                                                                                                                    |
| Error in reception conversion process                        | The unloading of the received buffers cannot be performed. Consult the editrang.out file for more details on the error.                                                                                                                                   |
| Request reception from editran (A2R) *\<session>*            | editran/P is notified to start the reception of a transmission session of the presentation.                                                                                                                                                               |
| Request end of reception to editran (EDR) *\<session>*       | editran/P is notified to interrupt the reception of a transmission session of the presentation.                                                                                                                                                           |
| Reception interrupted                                        | The request to end reception has been processed successfully.                                                                                                                                                                                             |
| Editran emission request (A1P) *\<session>*                  | editran/P notifies that a remote request has been received for the indicated transmission session to be emitted. Buffer loading is ordered if none exist.                                                                                                 |
| Editran reception request (A2P) *\<session>*                 | editran/P notifies that a remote request has been received to begin receiving for the indicated transmission session.                                                                                                                                     |
| Editran session emitted (A3P) *\<session>*                   | editran/P notifies that the emission of the buffer file of the indicated session has ended. Emission ends when the A3P messages from all transmission sessions of the presentation have been received.                                                    |
| Editran session received (A4P) *\<session>*                  | editran/P notifies that the reception of the buffer file of the indicated session has ended. When all A4P messages from the presentation's transmission sessions have been received, the buffer unloading process is performed, which ends the reception. |
| Editran session interrupted (A7I) *\<session>*               | editran/P notifies that the indicated transmission session has been interrupted.                                                                                                                                                                          |
| Post-emission end editran session (A3R)                      | Response to editran/P for message A3P.                                                                                                                                                                                                                    |
| Post-reception end editran session (A4R)                     | Response to editran/P for message A4P.                                                                                                                                                                                                                    |
| No buffer available (A1R-) *\<session>*                      | Response sent to editran/P when the loading process fails upon receiving message A1P. The remote that made the request will receive an A7I message with code 121.                                                                                         |
| Launch previous user process                                 | The user process indicated in profiles has been launched.                                                                                                                                                                                                 |
| Previous user process finished                               | The user process indicated in profiles has finished successfully.                                                                                                                                                                                         |
| Error in previous user process                               | The user process indicated in profiles has finished with an error. Consult the cause in the editrang.out file.                                                                                                                                            |
| Launch post user process                                     | The user process indicated in profiles has been launched.                                                                                                                                                                                                 |
| Post user process finished                                   | The user process indicated in profiles has finished successfully.                                                                                                                                                                                         |
| Error in post user process                                   | The user process indicated in profiles has finished with an error. Consult the cause in the editrang.out file.                                                                                                                                            |
| Launch exception user process                                | The user process indicated in profiles has been launched.                                                                                                                                                                                                 |
| Exception user process finished                              | The user process indicated in profiles has finished successfully.                                                                                                                                                                                         |
| Error in exception user process                              | The user process indicated in profiles has finished with an error. Consult the cause in the editrang.out file.                                                                                                                                            |
| No buffer available (A2R-) *\<session>*                      | Response sent to editran/P when the reception preparation process fails upon receiving message A2P.                                                                                                                                                       |
| Waiting for remote unload acknowledgment                     | The emission is TRANSMITTED but the remote unload acknowledgment is still awaited in order to consider it finished.                                                                                                                                       |
| Unload acknowledgment received:                              | Unload acknowledgment reception status.                                                                                                                                                                                                                   |
| Unload acknowledgment sent:                                  | Unload acknowledgment sending status.                                                                                                                                                                                                                     |
| Cancelled waiting for remote unload acknowledgment           | The user has decided to initialize an emission that was pending receipt of the unload acknowledgment.                                                                                                                                                     |
| Transmission completed successfully \[*\<direction>*]        | Informational message upon completing an EMISSION or RECEPTION.                                                                                                                                                                                           |
| Exception: *\<msg>*                                          | A runtime error has occurred.                                                                                                                                                                                                                             |

#### Editran/G error codes

This table documents the different error codes that can occur during a transmission.

The table shows:

COD is the numeric value that is passed as a parameter to the user scripts and the value returned by the Editran/G API.

ID is the alias that identifies the error in the messages recorded in the log file.

MESSAGE is a brief description of the cause of the error.

| *COD* | *ID*               | *MESSAGE*                                                                                                                                                          |
| ----- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| 0     |                    | Successful result                                                                                                                                                  |
| 1     | CMD\_EXEC          | System error: process creation.                                                                                                                                    |
| 50    | APIG\_SNTX         | APIG: incorrect parameters.                                                                                                                                        |
| 51    | APIG\_INIT         | APIG: editran/G not started or not accessible.                                                                                                                     |
| 52    | APIG\_GREQ         | APIG: Error communicating with editran/G (request).                                                                                                                |
| 54    | APIG\_GRES         | APIG: Error communicating with editran/G (response).                                                                                                               |
| 62    | NO\_TAMPON         | Incorrect buffer file format.                                                                                                                                      |
| 64    | OPEN\_IN           | Error opening application file to be emitted.                                                                                                                      |
| 65    | OPEN\_OUT          | Error opening application file to be received.                                                                                                                     |
| 66    | READ\_CTRL         | Error reading control information in TAMPON or CSB.                                                                                                                |
| 67    | WRITE\_CTRL        | Error writing control information in TAMPON or CSB.                                                                                                                |
| 68    | WRITE\_DATA        | Error writing data in TAMPON or CSB.                                                                                                                               |
| 69    | ZERO\_REC          | TAMPON file without loaded records.                                                                                                                                |
| 70    | ALLOC\_ERROR       | System error: memory management.                                                                                                                                   |
| 71    | SAVE\_REL          | Error saving list of transmitted files.                                                                                                                            |
| 73    | WRITE\_OUT         | Error writing application file to be received.                                                                                                                     |
| 74    | SEQUENCE\_CSB      | Incorrect CSB file: sequence error.                                                                                                                                |
| 75    | TOTAL\_FILES       | Incorrect CSB file: error in the total number of files.                                                                                                            |
| 76    | TYPE\_FILE         | Unknown file format.                                                                                                                                               |
| 77    | LENGTH\_CSBREC     | Incorrect CSB file: error in file length.                                                                                                                          |
| 78    | HASH\_FILE         | Error calculating/verifying application file hash.                                                                                                                 |
| 79    | SIZE\_FILERECS     | Mismatch in the number of records in the application file. The total number of records indicated in the CSB control fields does not match those actually unloaded. |
| 80    | TOTAL\_CSBRECS     | Incorrect CSB file: error in the total number of records.                                                                                                          |
| 81    | SIZE\_FILEBYTES    | Mismatch in the total bytes of the application file. The number of bytes indicated in the CSB control fields does not match those actually unloaded.               |
| 82    | SYNCS\_CSB         | Mismatch in the number of synchronizations in CSB.                                                                                                                 |
| 83    | CFG\_LENGTH        | Application file with fewer records than specified in the profile. Check the characteristics of the files to be emitted.                                           |
| 84    | STS\_RECV          | Error in the unloading process because not all buffer files of the presentation have been received.                                                                |
| 85    | OPEN\_CSB          | Error opening/creating CSB file\|                                                                                                                                  |
| 86    | NO\_PERFILG\_LOCAL | No local editran/G profile exists.                                                                                                                                 |
| 87    | NO\_PERFILG        | The Presentation profile does not exist.                                                                                                                           |
| 90    | CFG\_NO\_FILES     | None of the files specified in the profile as emission files exist or could be found.                                                                              |
| 91    | USER\_SCRIPT       | Error running user script.                                                                                                                                         |
| 93    | PROFILES           | Presentation profile incompatible with load/unload process.                                                                                                        |
| 94    | CANCELED\_REQ      | Transmission cancelled.                                                                                                                                            |
| 95    | PROC\_ERROR        | Internal error: task creation in load/unload.                                                                                                                      |
| 96    | RUNTIME\_EXCEPT    | System error: "runtime exception".                                                                                                                                 |
| 97    | NO\_LICENSE        | License issue to perform any of the required functions.                                                                                                            |
| 98    | CRYPT\_ERROR       | Error in cryptographic processing of the data.                                                                                                                     |
| 99    | HDRFILE            | Internal error: invalid control headers.                                                                                                                           |
| 200   | NO\_ACK            | Remote unload could not be confirmed.                                                                                                                              |
| 201   | NO\_STATE          | Request incompatible with transmission state.                                                                                                                      |
| 104   | EXCEPT\_P          | Editran/P: Abort                                                                                                                                                   |
| 110   | EXCEPT\_P          | Editran/P: Operator                                                                                                                                                |
| 120   | EXCEPT\_P          | Editran/P: Incorrect remote buffer. Launch previous.                                                                                                               |
| 121   | EXCEPT\_P          | Editran/P: Incorrect remote buffer. No previous exists.                                                                                                            |
| 122   | EXCEPT\_P          | Editran/P: Incorrect remote buffer. Previous possibly running                                                                                                      |
| 123   | EXCEPT\_P          | Editran/P: Incorrect remote buffer. Incorrect exchange session number                                                                                              |
| 124   | EXCEPT\_P          | Editran/P: Incorrect remote buffer. Total number of records                                                                                                        |
| 130   | EXCEPT\_P          | Editran/P: Release.                                                                                                                                                |
| 140   | EXCEPT\_P          | Editran/P: Excess retries to emit.                                                                                                                                 |
| 160   | EXCEPT\_P          | Editran/P: Total mismatch.                                                                                                                                         |
| 170   | EXCEPT\_P          | Editran/P: Excess synchronization retries.                                                                                                                         |
| 190   | EXCEPT\_P          | Editran/P: Excess retries for end of emission.                                                                                                                     |
| 240   | EXCEPT\_P          | Editran/P: Profiles.                                                                                                                                               |
| 250   | EXCEPT\_P          | Editran/P: File not ready.                                                                                                                                         |

#### Exception Codes

In the previous list of error codes there are some that are due to problems with the transmission sessions. In these cases the following message appears in the Editran/G log: *"Editran session interrupted (A7I) \[E|R]COD"*. For each value, the reason is explained in more detail and whether it can be resolved without operator intervention.

| CODE. | CAUSE                                                      | EXPLANATION                                                                                                                                                                                                                                                                       |
| ----- | ---------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 104   | Abort                                                      | Unexpected interruption due to unknown cause.                                                                                                                                                                                                                                     |
| 110   | Operator                                                   | Interruption requested by the operator.                                                                                                                                                                                                                                           |
| 120   | Incorrect remote buffer. Previous launch.                  | The remote entity does not have its Buffer File available. The remote editran will automatically start the process that prepares the Buffer File and will request the transmission if the profile allows it. This code is only given when the remote entities are zOS or iSeries. |
| 121   | Incorrect remote buffer. Previous does not exist           | The remote entity does not have its Buffer File available. The remote editran is not configured to automatically start the process that prepares it, so it will not get out of this situation until the remote operator acts.                                                     |
| 122   | Incorrect remote buffer. Previous in possible execution    | The remote entity does not have its Buffer File available because it is still in use. In many cases this may be because the remote editran is still in the download process.                                                                                                      |
| 123   | Incorrect remote buffer. Incorrect exchange session number | The remote Buffer is in an incorrect state. The exchange number does not match. It is necessary to initialize the presentation, at least at one end.                                                                                                                              |
| 124   | Incorrect remote buffer. Total record number               | The remote Buffer is in an incorrect state. The total record number does not match. The receiving total records must be initialized.                                                                                                                                              |
| 130   | Release                                                    | Interruption due to a connection release.                                                                                                                                                                                                                                         |
| 140   | Excessive retries to transmit                              | The entity requesting the transmission does not receive a response from the remote side. This is usually due to some temporary communication problem but should be analyzed by the operator.                                                                                      |
| 170   | Excessive synchronization retries                          | The sending entity does not receive the remote confirmation of having received a burst of data. It may be due to slow communications and could be solved by decreasing the parameter ***No. of records per transmission block*** in the transmission session profile.             |
| 190   | Excessive end-of-transmission retries                      | The sending entity does not receive the remote confirmation of the end of transmission. This situation may make it necessary for both entities to remain in different states and for initialization to be required at one end.                                                    |
| 240   | Profiles                                                   | Transmission is interrupted because one of the session profile parameters is not compatible with the loaded buffer file. For example, if it is encrypted and the session is configured to compress during transmission. It is not recoverable without operator intervention.      |
| 250   | File not prepared                                          | Transmission is interrupted because the local Buffer File is in an incorrect state. In these cases, it is advisable to initialize the Presentation.                                                                                                                               |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.editran.onesait.com/documentacion-editran/open-v5.3-en/linux/interfaz_generica.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
