# Screen generator

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Screen_generator
> Markdown URL: https://mediated.wiki/source/Screen_generator.md
> Source: https://en.wikipedia.org/wiki/Screen_generator
> Source revision: 1292367945
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{Short description|Software to create data entry screens}}
A '''screen generator,''' also known as a '''screen painter,''' '''screen mapper,'''<ref>{{Cite book |last1=Pratt |first1=Philip J. |url=https://books.google.com/books?id=jh8PAQAAMAAJ |title=Database Systems: Management and Design |last2=Adamski |first2=Joseph J. |date=1991 |publisher=Boyd & Fraser Publishing Company |isbn=978-0-87835-579-2 |pages=627 |language=en}}</ref> or '''forms generator''' is a software package (or component thereof) which enables data entry screens to be generated declaratively, by "painting" them on the screen WYSIWYG-style, or through filling-in forms, rather than requiring writing of code to display them manually.<ref>{{Cite book |last1=Budde |first1=Reinhard |url=https://books.google.com/books?id=1kGqCAAAQBAJ&pg=PA87 |title=Prototyping: An Approach to Evolutionary System Development |last2=Kautz |first2=Karlheinz |last3=Kuhlenkamp |first3=Karin |last4=Züllighoven |first4=Heinz |date=2012-12-06 |publisher=Springer Science & Business Media |isbn=978-3-642-76820-0 |language=en}}</ref><ref>{{Cite journal |last=Hoffman |first=Paul E. |date=1982-07-05 |title=SCR Screen Manager, a screen generator by Reddox |url=https://books.google.com/books?id=MjAEAAAAMBAJ&pg=PA58 |journal=[InfoWorld](/source/InfoWorld) |language=en |volume=4 |issue=26 |pages=58}}</ref><ref>{{Cite journal |last=Del Rossi |first=Robert |date=1 October 1990 |title=The state of screen generators |journal=Data Based Advisor |volume=8 |issue=10 |url=https://dl.acm.org/doi/abs/10.5555/129521.129528 |via=[ACM Digital Library](/source/ACM_Digital_Library)}}</ref><ref name=":0">{{Cite journal |last=Bowerman |first=Robert |date=July 1983 |title=Relational database systems for micros |url=https://archive.org/details/bitsavers_datamation_52582203/page/n119/mode/1up |journal=[Datamation](/source/Datamation) |volume=29 |issue=7 |page=132 |via=[Internet Archive](/source/Internet_Archive)}}</ref> [4GLs](/source/Fourth-generation_programming_language) commonly incorporate a screen generator feature.<ref>{{Cite journal |last1=Gray |first1=M. M. |last2=Fisher |first2=G. E. |date=1991-03-01 |title=Functional Benchmarks for Fourth Generation Languages |url=https://www.nist.gov/publications/functional-benchmarks-fourth-generation-languages?pub_id=900436 |journal=NIST |language=en}}</ref> They are also commonly found bundled with database systems, especially entry-level databases.<ref name=":3">{{Cite book |last1=Gillenson |first1=Mark L. |url=https://books.google.com/books?id=HMJqDwAAQBAJ&pg=PA49 |title=Wiley Pathways Introduction to Database Management |last2=Ponniah |first2=Paulraj |last3=Kriegel |first3=Alex |last4=Trukhnov |first4=Boris M. |last5=Taylor |first5=Allen G. |last6=Powell |first6=Gavin |date=2007-03-16 |publisher=John Wiley & Sons |isbn=978-0-470-10186-5 |pages=49 |language=en}}</ref> A screen generator is one aspect of an application generator, which can also include other functions such as [report generation](/source/Report_generator) and a [data dictionary](/source/data_dictionary).<ref>{{Cite journal |date=1987-04-20 |title=Key elements of CASE kits: Prototyping, code generators |url=https://books.google.com/books?id=fKtIbDybloEC&pg=PA74 |journal=[Computerworld](/source/Computerworld) |language=en |volume=21 |issue=16 |page=74 |via=Google Books}}</ref><ref>{{Cite journal |last=Babb |first=Elizabeth A. |year=1985 |title=Increasing Productivity with the Application Generator Interface |url=https://www.tandfonline.com/doi/abs/10.1080/07399018508967756 |journal=Journal of Information Systems Management |volume=2 |issue=2 |pages=57–67 |doi=10.1080/07399018508967756 |issn=0739-9014|url-access=subscription }}</ref> The earliest screen generators were character-based; by the 1990s, GUI support became common, and then support for generating [HTML forms](/source/HTML_form) as well. Some screen generators work by generating code to display the screen in a high-level language (for example, COBOL); others store the screen definition in a data file or in database tables, and then have a runtime component responsible for actually displaying the form and receiving and validating user input. 

== Examples ==
Examples of screen generators include:
* IBM Screen Definition Facility II:<ref>{{Cite book |last=Bert |first=Joseph J. Le |url=https://books.google.com/books?id=GbxQAAAAMAAJ |title=CICS Essentials: For Application Developers and Programmers |publisher=McGraw-Hill |year=1993 |isbn=978-0-07-035869-0 |pages=19 |language=en}}</ref> generates screens for [CICS BMS](/source/CICS), [IMS MFS](/source/IBM_Information_Management_System), [ISPF](/source/ISPF), [GDDM](/source/Graphical_Data_Display_Manager) and [CSP/AD](/source/IBM_Cross_System_Product).<ref>{{Cite web |title=Screen Definition Facility II |url=https://lookupmainframesoftware.com/index.php/soft_detail/dispsoft/2046 |access-date=2025-01-04 |website=Lookup Mainframe Software}}</ref>
* Performix for [Informix](/source/Informix).<ref name=":0" /><ref>{{Cite journal |last=Schussel |first=George |date=February 1983 |title=Mapping out the DBMS territory |url=https://www.georgeschussel.com/wp-content/uploads/articles/1983%20Mapping%20out%20the%20DBMS%20territory.pdf |journal=Data Management Magazine |issn=0148-5431 |oclc=1796752}}</ref>
* [Microsoft Visual Basic](/source/Visual_Basic_(classic))<ref name=":1">{{Cite book |last=Langer |first=Arthur M. |url=https://books.google.com/books?id=pcm9BwAAQBAJ |title=Analysis and Design of Information Systems |date=2013-03-14 |publisher=Springer Science & Business Media |isbn=978-1-4757-3492-8 |pages=162–164 |language=en}}</ref>
* the forms component of [Microsoft Access](/source/Microsoft_Access)<ref name=":3" />
* [Oracle Developer](/source/Oracle_Developer_Suite),<ref name=":1" /> in particular its [Oracle Forms](/source/Oracle_Forms) component
* the QDesign component of [PowerHouse](/source/PowerHouse_(programming_language))
* [SystemBuilder/SB+](/source/SystemBuilder%2FSB%2B)
* the ''Screen Painter'' component of SAP's [ABAP Workbench](/source/ABAP)<ref>{{Cite book |last1=Markandeya |first1=Sushil |url=https://books.google.com/books?id=iV8wBQAAQBAJ&pg=PA649 |title=SAP ABAP: Hands-On Test Projects with Business Scenarios |last2=Roy |first2=Kaushik |date=2014-11-17 |publisher=Apress |isbn=978-1-4302-4804-0 |pages=649 |language=en}}</ref>
* the FoxView component of [FoxPro](/source/FoxPro).<ref>{{Cite journal |last=Campbell |first=Greg |date=1988-11-15 |title=FoxBASE Plus/LAN |url=https://archive.org/details/PC-Mag-1988-11-15/page/n260/mode/1up |journal=[PC Magazine](/source/PC_Magazine) |volume=7 |issue=19 |pages=261}}</ref><ref>{{Cite journal |last=Duncan |first=Judy |date=1991-08-19 |title=FoxPro speeds up query results |url=https://books.google.com/books?id=l1AEAAAAMBAJ&pg=PA57 |journal=[InfoWorld](/source/InfoWorld) |language=en |volume=13 |issue=33 |pages=57}}</ref><ref>{{Cite journal |last=Bauman |first=John |date=1990-06-01 |title=SnapApp: the application generator for FoxPro |url=https://go.gale.com/ps/i.do?id=GALE%7CA8714876&sid=googleScholar&v=2.1&it=r&linkaccess=abs&issn=10906436&p=AONE&sw=w&userGroupName=anon~ff2cd5e9&aty=open-web-entry |journal=Data Based Advisor |language=English |volume=8 |issue=6 |pages=12–14}}</ref> FoxView was originally developed by Luis Castro as a [dBASE](/source/DBase) screen generator named ''ViewGen''; Fox purchased it and bundled it with FoxPro 1.0.<ref name=":2">{{Cite web |title=The History of FoxPro - People That Contributed With Other xBase Tools |url=http://www.foxprohistory.org/people_other.htm |access-date=2025-01-04 |website=www.foxprohistory.org}}</ref> Later, Fox replaced Castro's code with their own screen painter code.<ref>{{Cite book |last=Nietz |first=Kerry |url=https://books.google.com/books?id=usRJNC6xyewC&pg=PA99 |title=FoxTales: Behind the Scenes at Fox Software |date=2003 |publisher=Hentzenwerke |isbn=978-1-930919-50-1 |pages=99 |language=en}}</ref>
* [dBASE](/source/DBase) included a built-in screen generator in dBASE IV onwards;<ref>{{Cite book |last=Littlefield |first=Warren M. |url=https://books.google.com/books?id=lFRJBG4EPOYC&pg=PA205 |title=dBASE-From the Dot Prompt: An Introduction to Structured Programming Using dBASE IV |date=1993-06-04 |publisher=State University of New York Press |isbn=978-1-4384-1107-1 |pages=205–220 |language=en}}</ref><ref>{{Cite book |last=Ross |first=Paul W. |url=https://books.google.com/books?id=LTi_DN_LCSIC&pg=PA601 |title=The Handbook of Software for Engineers and Scientists |date=1995-10-25 |publisher=CRC Press |isbn=978-0-8493-2530-4 |pages=601 |language=en}}</ref> in dBASE III and earlier, third party screen generators were available, including the already mentioned ''ViewGen'' <ref name=":2" />
* DPS 1100 for [UNIVAC 1100 series](/source/UNIVAC_1100%2F2200_series) mainframes.<ref>{{Cite journal |date=January 5, 1981 |title=Univac Combines Screen Generator, Handler |url=https://books.google.com/books?id=J_iAWQ5n914C&pg=PA93 |journal=[Computerworld](/source/Computerworld) |language=en |volume=15 |issue=1 |pages=93 |via=Google Books}}</ref><ref>{{Cite book |url=https://bitsavers.org/pdf/datapro/datapro_reports_70s-90s/Univac/1100/70C-846MM-20_8507_Sperry_1100_60.pdf |title=Sperry 1100/60 System |date=July 1985 |publisher=Data Pro |pages=13}}</ref>

== References ==
{{reflist}}

Category:Programming tools

---
Adapted from the Wikipedia article [Screen generator](https://en.wikipedia.org/wiki/Screen_generator) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Screen_generator?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
