<?xml version="1.0" encoding="utf-8"?>
<ManualTopic ID="/baanerp/tt/onlinemanual/100129" xml:lang="en">
	<Header>
		<Title xmlns:HTML="http://www.w3.org/TR/REC-html40">Program Scripts Overview</Title>
		<Keyword ContextSensitive="No"><Level1>Program script</Level1>
		</Keyword>
		<Keyword ContextSensitive="No"><Level1>UI script</Level1>
		</Keyword>
	</Header>
	<GeneralSection ID=""><Paragraph class="Default">The default behavior of a session is handled by the 4GL engine. If additional functionality is needed or default functionality needs to be by-passed, this should be programmed in a Program script (UI script).</Paragraph>
		<Paragraph class="Default">In ERP LN Tools, user interface actions are programmed in the UI script and application logic for a table, table fields and relations between tables should be programmed in the Data Access Layer (DAL). Programmers create a user interface (UI) script to change the default behavior of a session. They create a DAL script to program all the logical integrity rules and the business logic for a particular table.</Paragraph>
		<Note><SectionTitle>
                                 Note
                              </SectionTitle>
			<Paragraph class="Default">In Infor ERP BaanIV all logical integrity rules and all the business logic were programmed in the UI script, because DAL was first introduced in Infor ERP Baan5.0. DAL-2 was introduced in Infor ERP LN 6.1. For more detailed information regarding DAL refer to <Link href="/baanerp/tt/onlinemanual/100123" role="manual">DAL 1 Overview</Link> and <Link href="/baanerp/tt/onlinemanual/100124" role="manual">DAL 2 Overview</Link>.</Paragraph>
		</Note>
		<Paragraph class="Default">A UI script can contain one or more of the following types of 4GL event sections:</Paragraph>
		<List><ListItem>Program sections</ListItem>
			<ListItem>Zoom.from sections</ListItem>
			<ListItem>Form sections</ListItem>
			<ListItem>Group sections</ListItem>
			<ListItem>Choice sections</ListItem>
			<ListItem>Field sections</ListItem>
			<ListItem>Main table sections</ListItem>
		</List>
		<Paragraph class="Default">Field sections are only used for non-table fields, table fields are handled by the DAL script.</Paragraph>
		<Paragraph class="Default">Main table sections must not be used anymore, because the logic for the Main table is done via DAL.</Paragraph>
		<Paragraph class="Default">You can view and edit Program scripts via the <Link href="/baanerp/tt/adv/ttadv2530m000" role="session">Program Scripts / Libraries (ttadv2530m000)</Link> session. The script type is <GUIRef href="" role="manual">UI Script ....</GUIRef>.</Paragraph>
		<Paragraph class="Default">For details on Program scripts, refer to "4GL Language Features" in the <DocRef>ERP LN 6.1 Programmer's Guide</DocRef> ( <Code>progguide.chm</Code> Help file), which is stored in the <Code>help</Code> folder in the installation folder of your Infor BW Client.</Paragraph>
		<Note><SectionTitle>
                                 Note
                              </SectionTitle>
			<Paragraph class="Default">The <Code>progguide.chm</Code> Help file is delivered with the Dynamic Form Editor ( DFE ). If the file is not present on your PC, you must first install the DFE from the ERP LN installation CD.</Paragraph>
		</Note>
	</GeneralSection>
	<RelatedTopics><SectionTitle>
                              Related topics
                           </SectionTitle>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2230m000" role="session">Compile Program Scripts / Libraries (ttadv2230m000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2143m000" role="session">Libraries by Program Script (ttadv2143m000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2239m000" role="session">Delete Unchanged Objects by Program Script / Library (ttadv2239m000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2431m000" role="session">Print Program Scripts / Libraries (ttadv2431m000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2432m000" role="session">Print Current Program Scripts/Libraries for Package VRC (ttadv2432m000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2439m000" role="session">Print Objects by Program Script / Libraries (ttadv2439m000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2539m000" role="session">Objects by Program Script / Library (ttadv2539m000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2830s000" role="session">Find Pattern in more Program Scripts / Libraries (ttadv2830s000)</Link>
		</RelTopic>
		<RelTopic><Link href="/baanerp/tt/adv/ttadv2833s000" role="session">Print Differences between Program Scripts / Libraries (ttadv2833s000)</Link>
		</RelTopic>
	</RelatedTopics>
</ManualTopic>
