# Keeping external modules resident across terminal I/O

**URL:** <https://techcommunity.softwareag.com/t/keeping-external-modules-resident-across-terminal-i-o/92723>\
**Category:** Forum\
**Tags:** Adabas-Natural, Natural, Natural-on-Mainframes, Natural-Database-and-TP-Monitor-Interfaces-on-Mainframes\
**Created:** [February 11, 2010, 5:17am UTC](https://techcommunity.softwareag.com/t/keeping-external-modules-resident-across-terminal-i-o/92723 "2010-02-11T05:17:03Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mick\_Taylor](https://avatars.discourse-cdn.com/v4/letter/m/278dde/32.png) [@Mick\_Taylor](https://techcommunity.softwareag.com/u/Mick_Taylor)\
**Post date:** [February 11, 2010, 5:17am UTC](https://techcommunity.softwareag.com/t/keeping-external-modules-resident-across-terminal-i-o/92723/1 "2010-02-11T05:17:03Z")

</div>

We have a Natural / CICS program that calls external modules written in C.

If all the calls are done inside one terminal I/O the program works correctly but if more than one terminal /O is needed then the external modules are unloaded and the calls fail as the initialisation that was done in the external DLLs is lost.

Is there a way to keep the DLLs resident between the calls or is this a CICS limitation?

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/techcommunity/original/3X/c/d/cd19967bb605d28a72d77eb83a1cae22f3df2eb8.svg) [@system](https://techcommunity.softwareag.com/u/system)\
**Post date:** [February 16, 2010, 6:12pm UTC](https://techcommunity.softwareag.com/t/keeping-external-modules-resident-across-terminal-i-o/92723/2 "2010-02-16T18:12:02Z")

</div>

Only way is to run session in conversational mode, i.e. PSEUDO=OFF.  
problem is that the LE enclave is terminated over a pseudo-conversational screen I/O. So Natural has to reload all external LE programs (this includes all 3GL programs) via CEEFETCH, to re-setup the LE enclave for all relevant programming languages according to their atributes. In other words: a CICS LOAD HOLD for a 3GL program does not help; CICS LOAD HOLD would well keep the program in storage, but the LE enclave is brandnew again.

---

<div class="post-metadata">

**Author:** ![Mick\_Taylor](https://avatars.discourse-cdn.com/v4/letter/m/278dde/32.png) [@Mick\_Taylor](https://techcommunity.softwareag.com/u/Mick_Taylor)\
**Post date:** [February 17, 2010, 4:50am UTC](https://techcommunity.softwareag.com/t/keeping-external-modules-resident-across-terminal-i-o/92723/3 "2010-02-17T04:50:51Z")

</div>

Thanks Klaus. I will document the limitation.

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/techcommunity/original/3X/c/d/cd19967bb605d28a72d77eb83a1cae22f3df2eb8.svg) [@system](https://techcommunity.softwareag.com/u/system)\
**Post date:** [April 2, 2021, 2:58pm UTC](https://techcommunity.softwareag.com/t/keeping-external-modules-resident-across-terminal-i-o/92723/4 "2021-04-02T14:58:01Z")

</div>


