# New systax encountered

**URL:** <https://techcommunity.softwareag.com/t/new-systax-encountered/75900>\
**Category:** Forum\
**Tags:** Adabas-Natural, Natural, Natural-on-Mainframes\
**Created:** [December 20, 2007, 10:34am UTC](https://techcommunity.softwareag.com/t/new-systax-encountered/75900 "2007-12-20T10:34:07Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [December 20, 2007, 10:34am UTC](https://techcommunity.softwareag.com/t/new-systax-encountered/75900/1 "2007-12-20T10:34:07Z")

</div>

Hi,  
I have encountered the following code in a program

If +Top-fourgous=‘’  
+Top-fourgous=‘N’  
…  
End-if

What does it means ? Does it implies an AND or OR between the 2 conditions ? Or does it means something else ?

Thanks  
Mishra

---

<div class="post-metadata">

**Author:** ![Matthias1](https://avatars.discourse-cdn.com/v4/letter/m/9fc348/32.png) [@Matthias1](https://techcommunity.softwareag.com/u/Matthias1)\
**Post date:** [December 20, 2007, 12:35pm UTC](https://techcommunity.softwareag.com/t/new-systax-encountered/75900/2 "2007-12-20T12:35:23Z")

</div>

> [@Mishra](#):
>
> If +Top-fourgous=‘’  
> +Top-fourgous=‘N’  
> …  
> End-if

This code is not compilable.

```auto
define data independent
1 +top-fourgous (A1)
end-define
If +Top-fourgous='' /* <-- NAT0356
+Top-fourgous='N' /* <-- NAT0220
  ignore
End-if
end
```

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [December 20, 2007, 4:24pm UTC](https://techcommunity.softwareag.com/t/new-systax-encountered/75900/3 "2007-12-20T16:24:51Z")

</div>

The important point of Matthias’s answer, which I do not believe Mishra understood when asking the question, is that old global variables, always started with plus signs. Their new counterpart; variables in GDA’s and AIV’s may also start with plus signs.

Thus, +Top-fourgous is just some form of a global variable.

That said, the code excerpt is still rather strange. There should probably be a blank between two apostrophes in the IF (checking for a blank value), then a colon before the equal sign in the implicit ASSIGN. Thus the following code checks:

DEFINE DATA INDEPENDENT  
1 +TOP-FOURGOUS (A1)  
END-DEFINE  
IF +TOP-FOURGOUS=’ ’  
+TOP-FOURGOUS:=‘N’  
END-IF  
END

steve

---

<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:49pm UTC](https://techcommunity.softwareag.com/t/new-systax-encountered/75900/4 "2021-04-02T14:49:01Z")

</div>


