• No results found

Materiaal databank : version 1.0

N/A
N/A
Protected

Academic year: 2021

Share "Materiaal databank : version 1.0"

Copied!
89
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Citation for published version (APA):

Tran, M. D. (1988). Materiaal databank : version 1.0. (TH Eindhoven. Afd. Werktuigbouwkunde, Vakgroep Produktietechnologie : WPB; Vol. WPA0588). Technische Universiteit Eindhoven.

Document status and date: Gepubliceerd: 01/01/1988 Document Version:

Uitgevers PDF, ook bekend als Version of Record Please check the document version of this publication:

• A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website.

• The final author version and the galley proof are versions of the publication after peer review.

• The final published version features the final layout of the paper including the volume, issue and page numbers.

Link to publication

General rights

Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain

• You may freely distribute the URL identifying the publication in the public portal.

If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement:

www.tue.nl/taverne

Take down policy

If you believe that this document breaches copyright please contact us at:

openaccess@tue.nl

providing details and we will investigate your claim.

(2)

j:

M.D.

Tran

!

U

HS-stageverslag

\ juni 1988

(3)

Het voor U liggende verslag, is het resultaat van de werkzaamheden die ik in dit stage peri ode heb uitgevoerd.

Een korte omsehrijving van de opdraehten vindt U in de samenvatting van dit verslag.

Dit voorwoord gebruik ik verder graag om iedereen te danken voor hun hulp, in het bijzonder de heren M.T. de Groot en ir. L.J.A. Houtackers.

Due Tran juni 1988

(4)

Periode: student: stage nr:

opslaan.

Het programma wordt in dBase111 Plus command language geschreven.

1 maart tIm 17 juni 1987 M.D. Tran

WD 28

stage plaats: TUE - Laboratorium voor Omvormtechnologie. stage begeleider: ire L.J.A. Houtackers

(5)

SUMMARY

· . .

. .

.

.

.

1. INLEIDING

2. DE GEAUTOMATISEERDE TREKPROEF •

2.1 Werkwijze • • • • • • •. •

• • • •

2.1.1 Het verzamelen van gegevens

2.1.2 Het verwerken van gegevens • • • • • • •

2.2. De datastruetuur van de trekproef files

3. KEUZE VAN DE DATABASB TAAL

4.

DBASB III PLUS

.

.

·

· · ·

·

· · ·

4.1 Historie

.

. . .

· ·

·

·

·

· ·

4.2 De taal

.

. .

·

·

·

·

·

·

· ·

· ·

·

4.3 Bet interaetieve gebruik van dBase

· · · ·

4.4 Programmer en in Dbase

·

· ·

·

· · ·

·

· · ·

.

5. DATABASB ONTWERP

• • • • •

• • • • • • • •

5.1 Theoretisehe modellen .

• • .

• • •

5.1.1 Bet hierarehisehe model

• • • . • • . • • •

5.1.2 Het netwerk model

. • •

• • • . • •

5.1.3 Het relationele model

. • • .

• • •

.

5.1.3.1 Een beknopte introduetie • • • • • •

5.1.3.2 Prima ire sleutel • • . • • • • •

5.2 De opslagstruetuur

. • •

• • • • . • • • •

5.3 Gebruikersspeeifieatie

• • • • • • • • • • • •

5 • 4 De aanpak . . . • . . • • . • . • . . • .

5.4.1 Gegevensstruetuur

• • . • • • • • •

5.4.2 Het definieren van database bestanden • • •

5.4.3

Integratie van Paseal bestanden in dBase

bestanden . . . .

. . . • . . . . .

5.4.4 Het eonverteren van Paseal bestanden naar

ASCII bestanden.

• • •

• • •

5.4.5 Bet importeren van ASCII bestanden in dBase

bestanden. . . • . . . . . • . . . • . .

5.4.5.1

Het

importeren

van

bestanden

opgeslagen in een rij • • • • • • • •

5.4.5.2

Bet importeren van gegevens in een

kolom . . . .

5.4.6. Het opzetten van een dialoogstruetuur.

5.4.6.1 Dialoog struetuur

• • • •

5.4.6.2 De menu struetuur . • • • •

5.4.7 Seleeteren of benoemen • . • • •

6. PROGRAMMA ONTWERP • • •

6.1 Bet ontwerpen van

6.2 Bet ontwerpen van

6.3 Seherm Layout en

de dialoog

• • •

• • • • • •

de transaeties • • • • • • • •

Rapporten ontwikkelen

• • • •

2 3 4 4 4 4 5 6 7 7 7 8 9 10 10 10 10 10

11

11

12

15

16

16

17

17

17

18 18 20

21

21

22

23

27

27

27

28

(6)

8. SLOT

.

.

.

.

.

.

. . .

. .

.

LITERATUUR • • • •

.

.

. .

.

. .

.

.

Bijlage A: Lijst van variabelen van de trekproef files.

Bijlage B: De structuur van de CNK2 en MGG bestanden.

Bijlage C: De gebruiker handleiding, database programma.

Bijlage D: De Program Structuur Diagram dialoogstructuur.

Bijlage E: De listing van het database programma

31

(7)

SAMBNYATTIHG

In dit verslag wordt een besehrijving gegeven van de

werkzaamhe-den welke verriebt werwerkzaamhe-den bij het opzetten van een Materiaal

database systeem.

Met het database pakket dBase III PLUS worden de applieaties voor

het materiaal database ay.teem ontwikkeld.

De eerate atap in dit projeet is bet implementeren van de

"Paseal" files in dBase III format bestanden. Doer de ASCII cede

te hanteren wordt dit gerealiseerd.

Bierna voIgt het opzetten van de gegevensstruetuur, het ayateem

ontwerp en de programma ontwerp.

(8)

SUJOIARY

This report describes the work which has been done to create the

MATERIAL DATABASE SYSTEM.

Applications for the system were developped with the database

software system DBase III PLUS.

This development is as follows:

Firstly, we have to find a way to implement all the data's, which

are stored in "Pascal" format, into the database system.

Then the database structure will be designed follow up with the

system design after which the programma will be written.

(9)

1. IILBIDIHG

Bet Laboratorium voor Omvormtechnologie van. de vakgroep WPA(*),

TUE heeft de beschikking over verschillende test faciliteiten.

Biermee kunnen verschillende standaard proeven, die betrekking

hebben op het vakgebied Omvormen van metalen, vorden uitgevoerd.

Bnkele van deze proeven zijn de trekproef, de wringproef, de

Bricsen test, de Bulge test enz ••

Sinds kort kan de trekproef automatisch plaatsvinden, waarbij

het verzamelen en het verwerken van data m.b.v. een computer tot

atand komen. De verkregen resultaten

worden op een diskette

oPOeslagen. Per trekproef wordt opgeslagen: de materiaal naam,

de karakteristiek

deformatie weerstand

C,

de versteviging

exponent n, de materiaal code enz ..

Om al deze gegevens op te kunnen bergen en te onderhouden, is het

de bedoeling, dat er een database systeem worden oPOezet.

Mijn taak voor deze periode luidt dan ook:

1)

het onderzoeken naar de toepasbaarheid van dBaseIII Plus

voor dit database systeem.

2)

Met de oPOedane kennis zelf een materiaal database op te

zetten.

Dit systeem dient als een . eerste aanzet voor een uitgebreider

database systeem, dat nodig is als ook andere proeven

geau~omati­

seerd zullen worden in de toekomst.

In dit verslag wordt uiteengezet, welke stappen die gevolgd zijn

bij het opzetten van het systeem.

(10)

2. DB GBAUTQMATISBBRDB '1'R.BItPROBP

2.1 'erk.iize

Pe automatiscbe trekproef bestaat eigenlijk uit 2 gedeelte.

a)

Bet verzamelen van gegevens.

b)

Bet ver.erken van gegevens.

2.1.1 Bet verzamelen van aegevens

De

trekproef .ordt uitgevoerd op een "borizontale .ecbani.cbe"

trekbank. Tijdens de proef .ordt per tijdseenbeid de .omentane

kracht, de momentane breedte en de momentane dikte geregi.treerd.

Pit gebeurt m.b.v. verschillende .ensoren. De

signalen afkomstig

van deze sensoren, komen globaal gezegd via de versterkera, de

AlP converter, de PC computers tenslotte op een diskette terecht,

waar ze opgeslagen worden in afwachting van verdere ver.erking.

Deze gegevens wordt opgeslagen in een file, die <codenaam).PBS

beet: de codenaam is uniek en slaat aIleen op de betreffende

trekproef.

Tevens wordt van deze proef verscbillende metingsgegevens ,zoals

de materiaalsoort,

de materiaal code, de afko.at van het

materiaal enz •• , in de file (codenaam).MGG opgenomen;

Bet programma "Datataker tt'rekproef" draagt zorg voor de eerder

bescbreven bandelingen.

2.1.2 Bet ver.erken van gegevens

De

opgeslagen gegevens worden door bet programma "Trekproef

Analyse" verwerkt.

Pit programma berekent diverse materiaal parameters zoals de

C-en de n-waardC-en bij epsilon nul

=

0, C- en n-waarden bij epsilon

nul ) 0 , deze worden daarna in de file <codenaam).CNS gesaved.

(11)

Verder berekent bet programma ook de rek, de spanning, en de

anisotropie waarde per meting, deze gegevens zijn van belang bij

het maken van grafieken. Deze uitgewerkte gegevens worden in de

file <codenaam>.SEa gesaved.

2.2. De datastructuur yan de trekproef files

Zowel de "Datataker Trekproef" als de

"Trekproef analyse"

programma zijn in de taal Turbo Pascal

4.0

gescbreven, betgeen

automatisch inhoudt, dat de data ook in Pascalformat opgeslagen

zijn. Van de 4 opgeslagen files heeft de file <cadenaaa>.Mee:

bet Pascal type TEXT en de andere drie bet Pascaltype aEAL.

(in bijlage A zijn de in de files opgeslagen variabelen en bun

format weergegeven).

D@

t@~mi~

Yift d@

di~i·1

yaft d@

boy@ft'@fto~md.

fil •• (boe bet wordt

opgeslagen)' is van Groot belang bij de keuze van bet datab •••

pakket, waarmee het database systeem wordt opgezet.

(12)

3. UUZB

YAN

DB DA'l'ABASB 'l'AAL

V~~r

de keuze van de database taal kan men kiezen uit

versehil-lende pakketten die speeiaal voor deze doeleinden 2ijn ontworpen.

Bijvoorbeeld:

DBASB III PLUS

Foxbase

QU

'l'urbo Paseal Database 'l'oolbox

Van de vele keuzen treden de twee pakketten dBase III Plus en

'l'urbo Paseal Database 'l'oolbox duidelijk op de voorgrond.

DBase III Plus vanwege de naamsbekenheid van dit pakket en

het besehikbaar zijn van dit pakket in het Laboratorium voor

Omvorateehnologie.

'l'urbo Paseal,

omdat het dezelfde data format hanteert als

de opgeslagen trekproef-gegevens.

Uit de vier bovengenoemde pakketten wordt voor dBaseIII Plus

gekozen. Argumenten hiervoor 2ijn op de eerste plaats de

naamsbe-kendsheid van het pakket en op de tweede plaats het feit dat

dBase tot de zogenaamde 4. genera tie taal behoort, terwijl '.se.l

in het rijtje van de derde generatie taal thuis hoort.

Bet onderseheid tussen deze twee talen is dat bij de 8en (Paseal)

zowel moet worden aangegeven wat er door de programma's moet

worden gedaan

als ook de wijze waarop dit dient te gebeuren,

terwijl bij de andere (dBASB) bet voor de prograameur duidelijk

is op welke manler ae aewenste re.ultat8ft tot atlft4 •••

8ft.

Het bovenstaande wordt hierna nog eens duidelijk gemaakt.

In bet volgende boofdstuk zal de taal dBase III Plus uitgebreid

worden behandeld.

(13)

4. DBASE III PLUS

In dit hoofdstuk zal het database pakketvoor de

pc:

dBase III Plus aan de orde komen. Met behulp van dit pakket zal de

materiaal database worden opgezet.

4.1 Historie

Dbase III is de in 1984 uitgebrachke opvolger van dBase II. Het is een van de meest verkochte database pakketten voor de

pc.

Het enorme commerciele succes van het pakket is te danken aan de brede markt die het pakket bestrijkt. Zowel voor de beginnende gebruiker die een elektronische kaartenbak wil opzetten, als de gevorderde die met meervoudige bestanden gaat werken, als

professionele ontwikkelaars, worden door dit pakket in hun behoefte voorzien. Het aantrekkelijk van dBase III is dat men, eventueel met ondersteuning van buitenaf, steeds op een hoger niveau toepassingsmogelijkheden van Dbase III kan ontdekken.

4.2 De taal

In feite is Dbase III een data manipulatietaal, een verzameling van commando's voor gegevensontsluiting en gegevensmanipulatie. De dBase programma's zien de database als een verzameling

bestanden. Meerdere bestanden kunnen tegelijkertijd geopend

zijn. Als dit het geval is, heeft elk bestand een wijzer, die op elk moment naar een van de records wijst. Met behulp van de dBase III commando's kan de recordswijzer bestuurd worden. Dbase III bevat behalve recordswijzer besturingscommando's ook commando's voor bestandscreatie, data onderhoud, data display, geheugen variabelen manipulatie (memvars), programmabesturing, dbase parameters control en bovendien een groot aantal functies, die gebruikt kunnen worden in expressies.

(14)

gemanipu1eerd worden. (zie 4.3 en 4.4)

4.3 Het interactieye qebruik yan dBase

Met de zogenaamde Query Language kunnen op interactieve wijze

gegevens uit de database worden bewerkt. Dit is de zogenaaade

interactieve mode.

DBase kent twee vormen van interactief

gebruik. De .eest

elementaire vorm van interactie is, dat elk commando, dat wordt

ingetypt, direct wordt uitgevoerd. Door aidde1 van

Belp-infor-matie kan de gebruiker voortdurend inforBelp-infor-matie over het gebruik

yan commando's krijgen. Bet z1Jn echter de gebruikers die

gedurende een dbase III sessie

verantwoordeli~k zi~n

voor

4.

consistentie van de achtereenvo1gens ingevoerde commando's. Ben

tweede vorm van interactief gebruik is in dBase III uitgewerkt

door een menu gestuurde dialoog waarbij de gebruiker in kleine

stapjes het probleem definieert. De consistentie yan de stappen

wordt door dBase III bewaakt. Bet gebruik van het ASSIST-commando

beperkt zich tot slechts een gegey.nabe.tand,

waarmee in de

praktijk het concept van een simpele

"elektronische kaartenbak'

volledig is geimplementeerd.

Zodra er problemen moeten worden

opgelost waarbij meerdere gegevensbestanden betrokken zijn, is

het ASSIST-commando ontoereikend.

Ben van de nadelen van het interactief gebruik van dBase III is,

dat de eindgebruikers over enige kennis van dBase III commando's

moeten beschikken om effectief met dBase te kunnen omgaan.

Dbase III beschikt daarom over de aogelijkheid om interacti.v.

commando's op te slaan in een commando file, waarna aan dBase III

de opdracht gegeven wordt om deze commando's achtereenvolgens

uit te voeren. Dit is de zogenaamde program mode

(15)

4.4 'rograameren in Dbase

In de program mode komt het pakket dBase 111 beter tot haar recht, door het gebruik van de gestructureerde programma elementen zoals DO WHILE .•• KNDDO enz •. , de talrijke standaard functies en de mogelijkheden van dBase om validiteit-, integri-teit- en domeincontrole uit te voeren enz ••

De applicatie ontwikkelaars kunnen door gebruik te aaken van uitgebreide menudialogen de programma's zodanig schrijven, dat de eindgebrulkershet pakket optimaal kunnen benutten zonder

enloe

kennis te hebben van de dBase III commando's.

Voor een volledige uitleg van dBase vordt vervezen naar de literatuur.

(16)

5. DATABASE ONTWERP

Een van 4e belangrijkste activiteiten bij bet opzetten van een

database is het ontwerpen van de gegevensstructuur. Hierin wordt

vastgelegd hoe de gegevens worden opgeslagen en hoe de relatie

onderling tussen de gegevens zijn.

5.1 Theoretische modellen

Voor bet vastleggen van gegevens bestaan er diverse tbeoretische

modellen, zoals het hierarchische model, het netwerk model, het

relationele model enz •.

5.1.1 Het hierarchische model

In het bierarchische model gaat men ervan uit dat aIleen

hierarchiscpe verbanden

tussen objecten bestaat. Men maakt

hier~ij

gebruik van de zogenaamde boomstructuren.

Ben van de

problemen hierbij is dat gegevens niet altijd op de ••

wij ••

gestructureerd zijn. Het bouwen en onderhouden van een

bier-archiscbe systeem is hierdoor complex en vraagt gespecialiseerde

kennis. Dit model stond aan de basis voor de eerste generatie

database systemen.

5.1.2 Het netwerk model

De

tweede generatie database aystemen worden gebouwd rond het

netwerk model.

Op

grond van de netwerk structuren (m:n relatie)

biedt het netwerk systeem betere mogelijkheden om de relatie

tussen de gegevens in de ,database vast te leggen.

5.1.3 Het relationele model

Een model,

dat nog een grotere flexibiliteit biedt in het

vastleggen van de relaties tussen de objecten is het relationele

model.

(17)

Bet relationele model is het meest flexibel model van aIle dri.

en zal dus als model voor de gegevens structuur dienen.

5.1.3.1 Een beknopte introductie

Door E.F. Codd werd het model in 1970 geintroduceerd. Dit model

is gebaseerd op begrippen uit de verzamelingleer. Basis van het

relationele model is de relatie. Een database is dan de

verzame-ling van onderverzame-ling gerelateerde relaties. Deze relaties worden

voorgesteld als een tabel. Elke rij uit deze tabel

vertegenwoor-digt een entiteit occurence,

en elke kolom van de tabel is een

attribuut w.arde van het tabel. Dit volgende voorbeeld zal het

bovenstaande duidelijker maken:

voorbeeld:

We hebben een tabel meetgegevens waarin diverse gegevens van een

trekproef worden vastgelegd zoals: de datum,

de treksnelheid, de

operator, het materiaal soort enz •. De desbetreffende trekproef

is dan een van de entiteit occurence van de tabel, en de gegevena

zijn dan de attributen waarden.

5.1.3.2 Primaire sleutel

Dit is een attribuut of een combinatie van attributen

(kolom-men), die een entiteit occurence

(rij) uniek maakt.

Van de

meetgegevens tabel in de bovengenoemde voorbeeld, zal er geen

priaaire sleutel worden gevonden,

want als men bijvoorbeeld de

kolom datum neeat,

kunnen er verschillende trekproeven op die

datum zijn uitgevoerd, door bijvoorbeeld Dog 8en kolom (code)

aan de tabel toe te voegen,

waarvan de code aIleen betrekking

heeft of "n trekproef, is elke rij dan uniek identificeerbaar in

de tabel.

(18)

Uitgaande van het laatst genoemde model, aal de huidige gegevena

structuur van de opgeslagen Pascal files worden doorgelicht,

waarna geprobeerd

wordt,

deze zodanig om te zetten, dat het op

het derde theoretisch model zal lijken. Hoewel niet nodig, biedt

deze opslagstructuur toch de meest flexibele manier van gagevena

verwerking en tevens is de bestendigheid tegen verwerkingsfouten

bij deze opslagstructuur het grootste.

5.2 De opslaastructuur

De

huidige opslagstructuur is, zoals al eerder beschreven,

opgebouwd uit:

a)

een uniek code:

deze heeft aIleen be trekking op de

betreffende trekproef.

m

TA875201 T

=

trekproef

A

=

aluminium

(ook mogelijk

F

=

staal

M

=

messing

It

=

koper

R.

=

roestvast

87 =

jaaraanduiding

52

=

weeknummer

01 =

proefnummer

b)

4 files, te weten:

<codenaam>

+

MGG

It It +

FBS

+ SER. +

eNE

is

staal)

Als deze opslagstructuur met behulp van de eerder genoemde

modellen worden baschreven, dan krijgen we het volgende beeld:

(19)

code

J

I

,

I

f

FBS

MOO

CNE

SER

<codenaam).FBS

I

I

I

imr, b , sO

I

aantal F[iJ

sri]

b[i]

1

·

·

mr

<codenaam).MGG

datum werkstof materia plaat

·

...

wijz.opm2

nummer

soort

dikte

881202

1.5678

A12shh

1

.

.

.

opmerking

<codenaam).SER

I I

Imr

I

A 0 l lb l . It 1

.

.

mr

(20)

<codenaam).CNE

1 mr

Zoals te zien is, is deze opslag structuur een combinatie van een

hierarchische structuur en tabel1en onder diverse takken, terwij1

bovendien een tabel nog subko1ommen bevat. Voor database

doe1-einden is deze structuur niet geschikt. Uit de oude structuur is

de nieuwe opslag structuur afge1eid, die als voIgt uitziet:

tabel CNK2

code

aanta1

C

n

C

n

epsO

trekproef meetwaard

TA881202

20

219.1 0.19 219.1 0.19 0.00

TF881203

89

·

..,

.

..,

. .

.

..,

86

. . .

.

.

. .

.

.

..

.

.

·

...

. ...

·

.

.

. . .

.

.

12

TR.881224

37

1200 0.35 1400 0.46 0.02

..,

...

· .

. .

..

. . .

.

.

.

. . .

. . ... .

.

.

.

tabel MOO

code

datum werkstof materia

p1aat

wa1s

bank

trekproef

nummer

soort

dikte richting sne1h.

,

TA881212

280388 1.6658

a12shh

1

45

0.16

.. ..

. .

.

. . .

..,

..

.

..

.

. ·

.

. . .

..

· .

.

. .

.

..,

.

. .

. · .

..,

.

.

.

·

..

.

.

· . .

. . .

..

..

· .

. . . . ·

... · . . . .

.

·

. . .

.

·

. .

. .

. · . . .

TR881224

290388

1.5467

RVS

1

0

0.16

· ... ·

...

·

. . .

.

.

·

. .

. .

..

·

. . .

.

· . .

..

.

. ·

...

(21)

Deze nieuwe opslag struetuur bestaat dus uit twee tabellen,de

CNK2 tabel met de velden (code,

(C,

n),( C,n,.o»

en de MGG

tabel met de velden

(code, datum, ••• ). De oude files PBS en SER

bevatten gegevens, die alleen van belang zijn bij het tekenen van

grafieken en zijn dus onbelangrijk voor bet database systeem. Om

die reden

worden ze dan ook niet in bet database BYBteem

opgenomen.

Bet veld

(kolom) CODE vormt voor deze beide tabel de primaire

sleutel. Bieraee is de relationele bewerking VBRBINDING tUB Ben

deze twee tabellen mogelijk.

5.3 Gebruikersspecificatie

Na het vastleggen van de gegevensstruetuur,

vastleggen van de gebruikersspeeifieatie,

systeem uit te voeren transaeties.

is de tweede stap bet

d.w.z. de door bet

De volgende. transactte. zijn gedetinieerd:

1)

Overziehten van

c-

en n-waarde per materiaal soort.

2)

Overziehten van materiaalsoort bij gegeven C en

ft.

3)

Overziehten van complete tabel CNK.

4)

Overziehten van complete tabel MGG.

5)

Bet invoeren van nieuwe bestand.

6)

Bet verwijderen van bestanden.

7)

Bet wijzigen van bestanden.

opmerking t.a.v. transaetie 5,6,7

transaeties 5: nieuwe trekproef wordt ingevoerd •

transaeties 6: oude trekproef wordt uit het systeem verwijderd.

transaeties 7: bij deze

transaeties mogen

alleen het veld

"materiaal naam" en "werkstoffnr."

van de tabel

MGG worden veranderd.

(22)

In de toekomst is ook dit niet meer mogelijk

wanneer men bij het invullen van de

metinoaoeoe-yens van de trekproef meteen het goede

werkstoff-nummer en de juiste materiaalcode invoert.

Bij het muteren van gegevens

(invoeren,

wijzigen, verwijderen)

dient er op de integriteit van gegevens gelet te worden. Hiermee

wordt bedoeld dat de gegevens een eenduidig dienen te zijn.

Wanneer men bijv. in de CNK2 tabel een rij verwijdert, dan moet

ook de betreffende record uit de MGG tabel worden verwijderd.

Het systeem dient uiteraard menu oestuurd te zijn. De atandaard

layout van het menuscherm van het Lab voor Omvormtechnologie

dient aangehouden te worden.

5.4 De aanpak

Bij het ontwerpen van het programma moe ten de volgende stappen

worden gevoigd:

1-

De gegevens structuur van deze database ontwerpen.

Hierna kunnen verschillende database bestanden worden

gedefinieerd.

2-

Aan de hand van de gebruiker specificatie een

dialoog-structuur

en hierna diverse menu-schermen opzetten.

De menu-schermen testen op werking.

3-

Er moeten programma's worden geschreven die trekproef

gegevens

in

een voorlopige database bestanden

plaatsen.

4-

Elk van de transacties in activiteiten onderverdelen.

Bierna worden de werkzame commando's in een commando

bestand gezet.

5.4.1 Geaevensstructuur

(23)

5.4.2 Het definieren van database bestanden

Dit wordt gedaan aan de band van de gegevensstructuur, m.b.v.

bet dBase commando

.CREATE.<database naam)

Hierna komen we in de ASSIST mode van dBase,

waarna diverse

velden van de database en bun eigenscbap gedefinieerd kunnen

worden.

De bestanden CHK2 en MGG zijn zo opgezet. De structuur van beide

bestanden is in bijlage B opgenomen.

5.4.3 Intearatie van Pascal bestanden in dBase bestanden

De in Pascal formaten opgeslagen gegevens in de CNE, SER, PBS

zijn voor Dbase III niet berkenbaar.

Ze zijn ecbter vel

herken-baar voor praktische aIle talen als deze gegevens in ASC II*

formaten zijn opgeslagen. Dus om de gegevens van de CNE-files in

dBase bestanden in te lezen, moeten er eigenlijk twee dingen

worden gedaan.

a-

Het converteren van de in Pascal formaten gegevens

naar ASCII formaten.

b-

Het importeren van de ASCII gegevens in dBase

bestan-den.

5.4.4 Het converteren van Pascal bestanden naar ASCII bestanden.

Het programma conver7.pas is een voorbeeld van hoe bet

con-verteren te werk gaat. Dit programma zet de gegevens van de files

<codenaam>.CNE, die bet pascal type REAL

heeft, naar een nieuwe

files <codenaam>.CNK die het pascal type TEXT heeft.

(24)

De gegevens, die in deze files opgeslagen liggen, zijn van het type ASCII (TEXT. ASCII). In dit file zijn de C en n-waarde ,C en n-waarde met epsO achter elkaar in een rij gezet:

voorbeeld:

TF882002 1200.00 0.24 1300.00 0.26 0.01

Ze kunnen ook, indien gewenst onder elkaar in een kolom gezet worden. voorbeeld: TF882002 1200.00 0.24 1300.00 0.26 0.01

5.4.5 Het importeren van ASCII bestanden in dBase bestanden.

5.4.5.1 Het importeren van bestanden opgeslagen in een rij.

Voor het importeren van ASCII bestanden in dBase beatanden hee!t dBase III Plus het commando: APPEND FROM <filenaam> SDF ter beschikking. <filenaam) is de naam van het ASCII bestand. D ••• append command leest een rij van het ASCII bestand en zet het in een record van het dBase bestand.

Zo zou het importeren van het in voorbeeld

TF882002.CNK bestand als voIgt zijn gegaan:

(25)

a) V~~r het importeren.

De status van het database bestand CHK2 met de gedefinieerd velden is hieronder breedte voor en de veldtype. C;;: karakter n;;: nummeriek codenaam C 8 C 9 H

veergegeven. De cijfers stellen de veld-letter na het cijfer in elke veld stelt het

n CO nO epsO

5 H\ 9 H

I

5

H

I

4

HI

TF882002

1200.00 0.24 1300.00 0.26 0.01

b) Ha het importeren ziet het er als volg uit:

codenaam C n CO nO epsO

ITF8820021

1200.00 10.24 1300.00

10.26 \00011

We zien dus, dat voor een perfect verloop van het importeren van de ascii files in database bestanden, we er slechts voor moeten zorgen dat de afstand van de in de files opgeslagen gegevens overeenkomen met de veldbreedte in de database bestanden. De geimporteerde gegevens nemen hetzelfde veldtype aan als het veld vaarin ze geimporteerd zijn.

Voorbeeld:

C is een karakter type, ,maar neemt nadat het is geimporteerd het numerieke type aan.

(26)

5.4.5.2

Bet importeren van gegevens in een kolom

De

files <codenaam).MGG bevatten gegevens van bet type TEXT

=

(ASCII) en boeven dUs de eerste fase niet door te lopeno

In deze files zijn verscbillende gegevens in een kolom onder

elkaar gezet.

Datum

Werkstoffnummer

Materiaalsoort

Plaatdikte

enz ••

Deze kunnen als volgt in de database bestand MGG gezet worden.

Eerst worden ze in een bulpbestand MGG2 gezet. De structuur van

dit bestand is bieronder weergegeven:

naam .

20 C

(27)

Bestand MGG2 naam 23-06-88 1.0678 Al2shh 1

o

D. 'l'ran

Vervolgens kunnen de records van het MGG2 bestand in het MGG bestand worden gezet.

MGG datum MGG2 bestand naam 23-06-88--.... 1.0678 A12shh 1

o

D. '!'ran

werkst naam dikte walsr

5.4.6. Bet opzetten van een dialooqstructuur.

5.4.6.1 Dialoog structuur

operator

Onder een dialoog structuur wordt verstaan het "vraag en antwoord" spel, dat de gebruiker achter de computer uitvoert bij het definieren van zijn/haar probleem.

(28)

Deze dia100g leidt uiteinde1ijk tot het uitvoeren van een van de

transacties.

Er bestaat diverse dia100g structuren. Voor onze database

wordt

gekozen voor een hierarchische structuur waarbij de gebruiker,

door het geven van antwoorden op de geste1de vragen op het

scherm,

uiteinde1ijk zijn/haar prob1eem definieert, waarna het

programma een transactie za1 uitvoeren. Bierbij door10opt de

gebruiker diverse menu-schermen.

Uit de

bovenstaande dia100gstructuur

structuur naar voren gekomen.

5.4.6.2 De menu structuur

BOOFDMENU

1. Invoeren. van bestanden (transactie 4)

2. Wijzigen van bestanden (transactie 5)

3. Verwijderen van bestanden(transactie 6)

4. Opvragen van bestanden.(transactie 7)

5. Stoppen.

1

INVOEREN MENU

1.1 directory van schijf

1.2 invoeren van nieuwe trekproef

1.3 stoppen.

2

WIJZIGEN MENU

2.1 wijzigen van mat-naam

2.2 wijzigen van werkstoffnummer

2.3 stoppen

(29)

3.

VERWIJDEREN MENU

3.1 Lijst van aIle bestanden

3.2 Verwijderen van oude trekproef.

3 .. 3 Stoppen

4 OPVR.AGEN

4.1 Overzichten C en n waarde per aateriaal soort (trans 1)

4.2 Overzichten van aateriaalsoort bij gegeven C en n waarden ..

(trans 2)

4.3 Overzichten van complete tabel 1 CN'1t2 (trans 3)

4.4 Overzichten van complete tabel 2 MGG

(trans 4)

4.5 Stoppen

Deze struetuur heeft als voordeel dat mits goed geprogrammeerd,

het systeem niet kan vastlopen. Daar tegenover staat dat 8en

van

de krachtige hulpmiddelen van dBase: (de Query language) onbenut

blijft ..

5.4.7 Selecteren of benoemen

Uit de, voor de database gedefinieerde,

transacties wordt per

transactie het volgende vastgelegd:

a)

globale definities van de transacties.

b)

Welke bestanden en velden er nodig zijn.

e)

Bestanden (indexeren).

d)

Bewerking.

e)

Uitvoer.

Transactie: 1

Omschrijving:

Bestanden:

Overzichten van C en n-waarden per mat_soort.

CN1t2.DBf'

MGG .. DBF

NAAMCN.FRM

(30)

Toegangspaden:

Index bestanden:

Bewerking:

Uitvoer:

Transactie: 2

Omschrijving:

Bestanden:

Toegangspaden:

Index bestanden:

Bewerking:

Uitvoer:

Transaetie: 3

Omschrijving:

Bestanden:

Toegangspaden:

Index bestanden:

Bewerking:

Uitvoer:

via de ingegeven codeletter en mat_naam

CNX2 geindexeerd op CODE

MGG

geindexeerd op MAT_SOORT

Selectie in beide bestanden op mat_soort

8

mat_naam.

Rapporten lijst: overzichten van C en n, C en

n en £0 waarden per materiaal .oort.

Overzichten van mat_soort per C en n waarden.

CNX2.DBF

MGG.DBF

C-n-waarde.FRM

via de ingegeven C-bovengrens en C-ondergrens

en n- bovengrens en n-ondergrens.

Index bestanden CNX2 op C-waarde.

MGG

op code.

Selectie in het beide

bestanden voor C

ondergrens

<

C

<

bovengrens,

n ondergrens

<

n

< n bovengrens.

Overziehten van aIle materiaal-soorten, code,

(C,n_waarde), (C,n,epsO).

Overzichten tabel 1 <CNX2>

CNX2.DBF

CNX2.FRM

via selectie

CNX2 index op code

Projectie van aIle kolommen van de tabel.

Complete lijst van tabell

code,

aantal,

(31)

Transactie: 4

Omschrijving:

Bestanden:

Toegangspaden:

Index bestanden:

Bewerking:

Uitvoer:

Transactie: 5

Omschrijving:

Bestanden:

Toegangspaden:

Index bestanden:

Bewerking: .

Uitvoer:

Transactie: 6

omschrijving:

Bestanden:

Toegangspaden:

Index bestanden:

Overzichten tabe1 2 <MGG>

MGG.DBF

MGG.FRM

Via se1ectie

MGG index op code

Projectie van a11e ko10mmen van de tabe1.

Complete lijst van tabel 2 code, mat_soort,

werkstoffn enz ••

nieuwe trekproef invoeren

CNK2 en MGG.DBF

via de ingegeven nieuwe code

CNK2 geindexeerd op code;

MGG geindexeerd op

code

code van de trekproef wordt ingevoerd. Als

die a1 in het bestand voorkomt,

wordt dat

geme1d en een nieuwe code wordt gevraagd.

Vervo1gens wordt gekeken of het codenummer a1

bestaat op diskette a:

[Ja] De trekproef wordt in bestanden MGG en

CNX2

gezet. Nieuwe index bestanden wordt

aangemaakt.

[Nee] Er wordt gevraagd om een nieuwe code

in te geven.

Bijgewerkte bestanden CHk2.DBF en MGG.DBF

Verwijderen van bestanden

CNK2.DBF en MGG.DBF

via de ingegeven <codenaam>

CNk2 geindexeerd op code

MGG geindexeerd op code

(32)

Bewerking:

. Uitvoer:

Transactie: 7

Omschrijving:

Bestanden:

Toegangspaden:

Index bestanden:

Bewerking:

Uitvoer:

Berst wordt gekeken of de code weI bestaat.

Wordt de code gevonden, dan worden zowel dat

record in CHK2

bestand als dat in het MGG

bestand verwijderd.

Beide bestanden wordt

daarna bijgewerkt

Wordt de code niet gevonden, dan wordt een

nieuwe code gevraagd •

Bijgewerkt bestanden CNK2 en MGG.

Wijzigen van bestanden

MGG

via selectie

Mat_soort geindexeerd op materiaal soort

Laat de velden: code

I

mat_soort,

werkstoff-nummer op het scherm verschijnen, waarbij

de

velden mat_soort en werkstoffnummer,

editeer-baar zijn.

Veld codenaam en werkstoffnr zijn volgens de

vastgelegde norm gewijzigd.

(33)

6. PROGRAMMA OH'l'WERP

Door de beschrijving van de transacties en de definitie van de dialoogstructuur ligt het systeem voor wat betreft de specifica-ties vast. Er kan nu stap voor stap naar de oplossing toe gewerkt worden.

6.1 Het ontwerpen van de dialoog

Voor het beschrijven van de dialoog structuur wordt gebruik gemaakt van de Nassi Schneider's Diagram. Hierna wordt deze NSD in dBase notatie vertaald. Bet volgende stap is het testen van de schermen, echter zonder de transactie werkelijk uit te voeren. Bierna kan elk transactie afzonderlijk ontwikkeld, getest en in de gereedstaande dialoog gebracht worden.

(* er wordt gebruikt gemaakt van een standaard menu programma: Litebar procedure. Dit staat vermeld in het boek DbaseIII PLUS programmer's reference guide blz. 932, deze procedure is opgeslagen in de file MENU.PltG).

6.2 Het ontwerpen van de transacties.

Elk transactie bestaat in dBase uit een verzameling van comman-do's, die in een programma zijn ondergebracht. nit programma wordt een Command Files genoemd. Bij het aanroepen van deze command files worden de commando's die in de files staat achterelkaar uitgevoerd.

Alvorens we overgaan tot het schrijven van de command files, moet er eerst afspraken gemaakt worden:

De volgende afspraken worden gebruikt bij alle programma:

voor dBase commando's, functies enz •• worden uitslui-tend hoofdletters gebruikt (b.v. REPORT FORM).

voor database namen, veldnamen en memory variabelen worden kleine letters gebruikt.

(34)

Voor het schrijven van de command files worden eerst "English

like" pseudo codes ontwikkeld.

Daarna worden deze pas gecodeerd

in dBase III command language.

6.3 Scherm Layout en Rapporten ontwikkelen

In de bovengenoemde programmats worden soms gebruik gemaakt van

rapporten bestanden. Deze hebben de gedaante <filenaam>.FRM: Deze

zijn met behulp van de rapporten generator ontwikkeld en worden

gebruikt om

rapporten,

bestaande uit record velden,

van een

database bestand te genereren, uit te printen, naar het scherm of

naar een ASCII file te sturen.

Daarnaast is er de scherm-applicatie generator, die formaten

bestanden aanmaken. Deze hebben de gedaante <codenaam>.FMT

en worden gebruikt om seherm layout te ontwerpen.

Door gebruik te maken van deze twee hulpmiddelen kan er een hoop

tijd worden bespaard. Een ander voordeel bij gebruik van deze

hulpmiddelen is dat dbase automatisch de syntax bewaakt, waardoor

er geen fouten kunnen worden gemaakt.

(35)

7. OPTIMlLISATIE VAN HET DATABASE SYSTEBM

Hieronder worden enkele methodes beschreven die worden toegepast om de verwerkingssnelheid van het systeem te verhogen.

Deze zijn:

a) Het verwijderen van alle overbodig karakters. b) Het gebruiken van procedurebestanden.

c) Het compileren van het programma.

7.1 Het verwijderen van a11e overbodia karakter

Dbase III is een interpretatieve taa1. Dat wi1 zeggen dat elk karakter van het programma wordt gelezen en aan de hand daarvan wordt bepaald wat het commando is. Dan wordt het commando uitgevoerd en het vo1gende karakter wordt gelezen enz •• De werking van dBase kan worden vergeleken met de Basic interpreter.

Uit het bovenstaande voIgt, dat tijdens het uitvoeren van het programma ook de commentaarrege1s worden ge1ezen. Door deze commentaarrege1s weg te laten kan het tot een aanmerkelijke verbetering leiden.

Verder is het zo, dat dBase commando genoeg heeft om dat

aan de eerste 4 karakters van een commando te identificeren. Door aIle commando's op deze wijze in te korten krijgt men eveneens een sneller uitvoer.

voorbeeld:

(36)

7.2 Het gebruik van procedure bestanden

Het gebruik van procedure bestanden werkt eveneens sneller. Dit komt omdat een procedure bestand in RAM geheugen wordt op geslagen, terwijl een programma bestand vanaf de harddisk ot floppy disk opereert.

De tijd, die nodig is om iets uit het geheugen te lezen is veel korter dan de tijd die nodig is om hetzelfde uit de harddisk te lezen.

7.3 Het compileren van de programma

Op dit moment zijn twee dBase III PLUS compilers op de markt, deze zijn Clipper en Quicksilver. Deze compilers zetten dBase command files van de .PRG format om in de voor het DOS uitvoer-baar .EXE format. Naast de normale dBase programma van het

.pac

format biedt deze gecompileerde files de volgende voordelen:

1) het is sneller, want het programma werkt niet meer interpre-terende.

2) het programma kan nu vanuit DOS opgestart worden. De gebruiker hoeft het pakket dBase III PLUS dus niet in het bezit te hebben om een programma,geschreven met dBase, te draaien.

3) Beveiliging van het programma. Omdat het programma een machinecode- programma is, zijn wijzigingen in het programma of toegang tot de opgeslagen bestanden niet meer mogelijk.

4)

*

De compiler stelt de gebruiker nog meer functies en commando's ter beschikking, die niet in dBase aanwezig zijn. Hiertegenover staat, dat sommige dBase commando's in de gecompileerde file niet meer kunnen worden gebruikt.

(37)

8. SLOT

Dbase III PLUS bleek een uitstekend gereedschap te zijn bij het

opzetten van het database system.

Het beschikt over programmeerstructureringselementen zoals DO

WHILE

ENDDO,

CASE ••• OTHERWISE .•• EN'DCASE

en IF ••• ELSE

ENDIF om de applicatie modulair te kunnen ontwikkelen.

Ook hogere programmeertaal

concepten

zoals

procedures en

subprogramma's waarbij middels lokale- en globalevariabelen de

gegevens tussen de verschillende deelprogramma's kunnen worden

uitgewisseld zijn in dBase geimplementeerd.

De

datamanipulatie taal kent goede faciliteiten voor seherm

besturing en voor validiteit_ en domeincontrole op de

gebruikers-invoer.

Een zeer groot aantal standaard funeties ataan de

applicatieontwikkelaar ter beschikking.

Bet programma Materiaal Database,

dat met dBase is ontwikkeld,

bestaat uit verschillende subprogramma's die afzonderlijk prima

functioneert maar als een geheel nog gebreken vertonen.

De transacties 1

-zijn maar een paar

mogelijk zijn.

4 die in de gebruikers specificaties staan,

voorbeelden van bewerkingen die met dBaseIII

Voor de in de toekomst uitbreiding van het systeem, wanneer

behalve de trekproef ook andere proeven in het syateem worden

opgenomen, wordt het volgende aanbevolen.

a}

De opgeslagen data's van de nieuwe proeven moeten het

ASCII format hebben.

b)

De relationele concepten moeten worden aangehouden of

worden benaderd bij het opzetten van de opalagstructuur

van de data's. Dit moet al vanaf het begin gebeuren.

c)

De gebruikersspecificaties moeten al van tevoren worden

(38)

LITBRATUUR.

[1] Smit, G.L., Applicatie bouwen met dBase III, tweede druk, Sa.som Uitgeverij, Alphen aan den Rijn, 1987.

[2] Simpson, A., dBase III PLU·S Programmer's Reference Guide, Sybex, San Francisco, 1987.

[3] Simpson, A" Advanced techniques in dBase III, Sybex, San Francisco, 1986.

[4] Castro, L. t Hanson, J., Rettig, T., advanced programmer's Guide, Ashton-Tate, United States of America, 1985.

[5] Lunbeck, R.J., Remmen, F., bestandsoraanisatie, academic service, den haag, 1982.

[6] Tsu-der Chou, G., dBase III handboek, academic service, den haag, 1986.

[7] van der Sluis, A., Gorts, C.A.C., cursus pascal, academic service, den haag, 1984.

(39)

fll,: Ccod.n".).ftif datUi verkttoffDUller uteriaal fOort plaatdikte val&richting herto.st operator projectleider banksnelheid oP._l OPl..2 op._3 lerk trekbant type bank serie nUiler datataker trekproef regel 1 re,el 2 reoel 3 regel , uUzioinosdatu. uijziger uUz.O!)' 1 IIIUZ.O!)' 2 trpei .trinu

file: (codenea.).FBS trpe; IEALS

variabelen:

.r,

taantal .eetwaard,) bO, {be,ln breedte trekftaaf} fO {beoin dikte trekstaat} F[l],b[iJ,s[i] ( i : I, ,.r).

filei (codenae').SER type: BEALS

It, {aantal leetvaard,} A[i],.{i],£[i],t.[i],£,[i],R[i]

(1

=

l, •• ,It)

(40)

OPIerkinv : 1 resp 2 ,taat ¥GOr: .odell: , : Ctl

.odel 2 : _ : e(t + tl)·

(41)

Struotuur von datobase: C:onk2.dbf Asntol gegevensreoordsL S4

Datum lestste mutetie: 20/06/88 Veld Veldnsam Type

1 CODE Teken 2 :3 4 5 6 7 *Totsal* AANT C N CO NO EPSO Numeriek Numeriek Numeriek Numeriek Numeriek Numeriek Breedte 8 4 8 6 9 6 S 47 Deo 2 2 2 2 2 2

INDEX BESTANDEN: CNK2.NDX geYndexeerd OP CODE C_WAARDE geYndexeerd op C-wearde

De struotyre van het MGG bestond Structuur van database: C:mgg.dbf Asntal gegevensrecord S2

Datum leetste mutetie 20/06/88

Veld Veldnaam Type Breedte Dec

1 CODE Teken 8

2 DATM Teken 4

:3 WERKSTOFN Teken 8

4 MAT _SOORT Teken 6

5 SYLAAT Teken 9

6 WALSRICHT Teken 6

7 V_BANK Teken S

*Totaal* 42

INDEX BESTANDEN: MGG.NDX geYndexeerd OP veld CODE

MAT_SOOR.NDX geYndexeerd OP veld MAT_SOOR

(42)

W~t te doen bij calamiteiten Dear dit systeem in een het niet grondig worden nog veel bugs bevetten. systeem vest zou lopen uitgevoerd:

korte tijd is opgezet en ontwikkeld, kan getest. Hierdoor zal het ongetwijfeld Mocht er ooit iets gebeuren waardoor het dan moeten de volgende acties worden

1) het (escape) toets proberen. Dit lukt meestal in de meeste gevallen, als de toets maar lang genoeg wordt ingedrukt. Hierna verschijnt er onder het scherm:

Annuleren, Negeren of Uitstellen

(A) wordtdan ingedrukt, er verschijnt dan een • onder het scherm en het programma wordt afgebroken.

Hierna moet er (CLOSE ALL) worden ingetypt, dit commmando sluit dan alle op dat moment nog open bestenden. Door (QUIT) in te typen verlaat u dBase en u kunt het programma volgens de normale procedure opnieuw opstarten.

2) Mocht de bovenstaande acties niet lukken, dan moet u de computer uitzetten en opnieuw aanzetten, of de reset knop achter de computer proberen.

Door de abrupte stop van het programme zijn er nog geopend dBase bestanden op de harddisk, hierdoor zijn enkele

cluste~s op de herddisk ("lost") zoek geraakt. Door het programma CHKDSK/F te runnen, intypen (CHKOSK/F) ken de "lost" clusters meestal weer worden hersteld. Voor de preciezer beschrijving van het commando CHKOSK/F wordt verwezen naar de MS-DOS handleiding.

(43)

OPSTARTEN VAN HET SYSTEEM

Om het systeem OP te sterten moeten de volgende steppen worden doorgelopen.

Zet de computer aen

Voert de datum en de tijd in:

Bij het verschijnen yen prompt C:\) OP het scherm het volgende intypen: C:\>DATABASE

Hierne zal het detabase systeem worden opgestart.

Hierna zult u het startscherm zien verschijnen:

door OP een toets te drukken komt u in het hoofdmenu Op het scherm verschijnt het volgende:

Het hoofdmenu

I

HOOFDMENU

1:

Invoeren van bestanden. 2. Verwijderen van bestanden. 3. Opvragen van gegevens.

4. Wijzigen van metingsgegevens. 5. Stoppen.

Druk OP of en druk (return) of toets het opties nummer in

I

U kunt nu direct het opties nummer intypen of u kunt ook m.b.v. de cursor toets de opties det u wilt kiezen laten oplichten en dee rna OP de (Return) toets drukken.

Bij de opties Ninvoeren ven bestandenM

en ·verwijderen van bestandenN

wordt voor de volgende opzet gekozen: U kunt aIleen vie de codenaam een bestend invoeren of verwijderen. Dus venef het toetsenbord moet u den de codensam intypen.

(44)

I

INVOEREN 1. 01reotorie. 2. Naam invoeren.

3. Terug naar het hoofdmenu.

Druk OP of en druk <return> of toets het opties nummer in

Optie 1: Oireotorie

I

Met dit optie kunt u de direotorie van diskette in drive e: opvragen. U kunt het eventueel naar de printer sturen.

Optie 2: Naam invoeren

U kunt met dit optie nieuwe bestanden in de datebase voeren.

Nadat u de optie heeft gekozen, versohijnt stap voor step eanwijzingen op het soherm, die u dient OP te volgen.

Optie 3: Terug neer het hoofdmenu

Met dit optie kunt u terug near het hoofdmenu komen en daer via het optie 5 het programma stoppen.

Het verwljderd menu

Het verwijder soherm ziet er als voIgt uit:

I

VERWIJOEREN

1. Lijst' van database reoord. 2. Naam invoeren.

3. Terug near het hoofdmenu

Or uk op of en druk <return> of toets het opties nummer in

C-3

(45)

Optie 1

6ij deze optie wordt een lijst ven trekproeven met de CODE, MATERIAALSOORT,(C-weerde,n-weerde),(C-weerde, n-weerde, epsO) getoond.

Optie 2

Met deze kunt u een record 1n het best end verwijderen.

Nedet u voor deze optie heeft gekoZen, verschijnen er eenwijzing-en op het scherm die u op moet volgeenwijzing-en:

Het opvreeg menu

I

OPVRAGEN

1. C en n weerden.

2. Metings gegevens.

3. Terug near het hoofdmenu.

Druk op of en druk (return> of toets het opties nummer in

C-4

(46)

I

C en n waarde

1. Complete lijst uitprinten

2. Zoek materiaal met C en n waarde 3. Zoek 0 en n waarde van een mat.

4. Stoppen

Druk op of en druk <return> of toets het opties nummer in

Optie 1.1

I

Tabel CNK2 wordt bij het kiezen van dit optie uitgeprint

Optle 1.2

Door de materiaal code of naam in te geven worden alle proeven met dat materiaal getoond die in het database opgeslagen liggen. Optie 1.3

U kunt door de C en de n-waarde in te geven, een lijst van materialen laten uitprinten die de betreffende C en n waarde hebben.

Optie 2

De metingsgegevens van de trekproef kunnen met dit optie worden geraadpleegd.

(47)

I

1. Wijzigingen van veld werkstoffnummer 2. Wijzigingen van veld materiaal soort 3 Terug naar het hoofdmenu.

Druk op of en druk (return) of toets het opties nummer in

Optie 1

I

U kunt met deze opties het veld werkstoffnummer wijzigen.

Hierbij wordt de code, de materiaal soort, het werkstofnummer OP

het scherm getoond waarbij alleen het veld werkstoffnummer kan worden gewijzigd. Met behulp van de cursortoets kunt u de records doorbladeren. Door de (escape) toets in te drukken kunt u de wijzigingen ongedaan maken. Door ( Ctrl-End

>

in te toetsen kunt u de wijzigingen opslaan en terug naar het wijziging menu komen. Optie 2.

Idem ais optie 1, alleen bij deze is het veld materiaalsoort dat kan worden gewijzigd.

, 0

(48)

OPSTARTEN

OPSTARTSCHERM PRE$ENTEREN

WACHT OP EEN TOETSDRUK

HOOFDMEN

HOOFDMEN

keuze ::: 0

opties ::: 5

optie 1 ::: Invoeren van bestanden.

optie 2 ::: Verwijderen van bestanden.

optie 3 ::: Opvragen van gegevens.

optie 4 ::: Wijzigen von metingsgeQeven

optie 5 = Stoppen

Do litebar met opties ,keuze

(49)

Keuze # Opties.

---

-

~

Optie Optie Optie Optie Optie = 5

1 2 .3 4 Stoppen

invoer delet- opvre- veren keuze=opties. -en en gen -der

INVOEREN

INVOERSCHERM

keuze =

a

opties.

=

.3

optie 1

=

Direotory optie 2

=

Neem invoeren optie .3

=

Stoppen

Do liteber met opties. ,keuze

(50)

Keuze # Opties

---r---

-

---Optie 1 Optie 2 Optie = 5 Stoppen dil""_inv invnaam keuze=opties

OELETEN

OELETEN

keuze = 0

opties =: 3

optie 1 :: Lijst van database I""ecol""d

optie 2 =: Naam invoel""en

optie 3 = Stoppen

Do litebel"" met opties ,keuze

(51)

Keuze # Opties

---r---

~

Optie 1 Optie 2 Optie :: 5

Stoppen dir_del verwyder keuze=opties

WI.JZIGEN

WI.JZIGEN

keuze = 0

opties :: 3

optie 1 :: Wijzigingen vetn werkstoffnr.

optie 2 :: Wijzigingen vetn meterieelsoort

optie 3 :: Stoppen

Do liteber met opties ,keuze

(52)

Keuze # Opties

---

--

~

Optie 1 Optie 2 Optie :: 5 stoppen wiJzig_l wiJzig_2 keuze=opties

OPVRAGEN OPVRAGEN keuze :: 0 opties == 3 optie 1 = C en n waarde optie 2 :: Metingsgegevens optie 3

=

Stoppen

Do litebar met opties ,keuze

Litebar opvragen

Keuze # Opties

--

-

~

Optie 1 Optie 2 Optie ::: 5 Stoppen cnwaarde meet_geg keuze==opties

(53)

Cnwaerde

keuze ::: a

opties. ::: 4

optie 1 ::: Overziehten CNK2 tabel

optie 2 ::: Overziehten MGG tebel

optie .3 :::

optie 4 ::: Stoppen

Do liteber met opties ,keuze

Liteber Cnweer"de

Keuze # Opties.

---

r---r---

-

~

Optie Optie Optie Optie = 4

1 2 .3 Stoppen

opvr_l opvr_2 opvr_.3 keuze=opties.

(54)

~program's

listing

..,f"

~:lM.D.

Tran

~;r

s-

s tagevers lag

Wxruni

1988 ~;:NF code : D2 WPA: 0588 b '"'1'"

(55)

STARTMEN.PRG CENTREER.PRG HOOFDMEN.PRG MENU.PRG INVOEREN.PRG DELETEN.PRG OPVRAGEN.PRG VERANDER.PRG DIR_INV.PRG INVNAAM.PRG INV_2. PRG CHECK_l.PRG DIR_DEL.PRG VERWYDER.PRG OPVR_l.PRG OPVR-.2.PRG OPVR_3.PRG PROCES.PRG MEET_GEG.PRG WIJ'ZIG_l.PRG WIJ'ZIG_2.PRG E-l E-2 E-3 E-4 E-5 E-7 E-S E-9 E-l0 E-ll E-13 E-15 E-17 E-20 E-21 E-25 E-26 E-29 E-32 E-33 E-34 E-35

(56)

SET ECHO OFF

SET COLOR TO GR+/B,W+/BR, B SET COLOR ON

SET STATUS OFF

SET PROCEDURE TO centreer CLEAR

*---

KOP MENU

@ 1,1 TO 3,78 DOUBLE

DO center WITH ·STARTMENU·,80,2

lIIc_____

VOET MENU

@ 21,1 TO 24,78 DOUBLE

DO center WITH "Druk OP een toets om verder te QeenM

,80,22

*---

MIDDEN MENU

DO center WITH "DATABASE MATERIAAL PARAMETERS·,80,8

DO center WITH "Leboterium voor Omvormtechnologie T.U.E.·,80,10 DO center WITH "VERSION 1.0",80,12

DO center WITH "(c) copyright 1988",80,14

@ 17,5 SAY "informetie:"

@ 18,5 SAY "Tel: 040-474521"

@ 16,55 SAY "M.D. Tren"

@ 17,55 SAY Mir. L.J.A. Houteckers"

@ 18,55 SAY "Dr. ir. 3.A.H. Remeekers"

x

=

0 DO WHILE x :: 0 X :: INKEY() ENDDO CLOSE PROC DO hoofdmen E-2

(57)

PROCEDURE center

PARAMETERS title,rm,row

*----

title: tekst dst OP het scherm moest komen

*----

rm: sehermbreedte

*----

de rij w~~r de tekst komt te st~~n

pad

=

SPACE((rm!2)-(LEN(TRIM(title))!2)) kolom

=

LEN(psd) titlel

=

TRIM(title) @row,kolom SAYtitlel RETURN **************************************************************** E-3

(58)

SET PROCEDURE TO menu

*---

voorbereiden voor de loop opties ::: 5

keuze ::: 0

DO WHILE keuze # opties

*---

opzetten van de opties en titel optl ::: "Invoeren van bestanden.

..

opt2 = "Verwijderen van bestanden.

..

optS = "Opvragen van gegevens.

..

opt4 ::: "Wijzigen van metingsgegevens.

opt5 ::: "Stoppen ...

5

opties :::

titel ::: "HOOFDMENU"

*---

toon menu met opties CLEAR

DO Liteber WITH opties, titel DO CASE CASE keuze ::: 1 DO invoeren CASE keuze

=

DO deleten CASE keuze ::: DO opvragen CASE keuze ::: DO verender ENDCASE ENDDO CLEAR 2 3 4

? "Bedankt en tot ziens !"

CLOSE PROC QUIT

E-4

(59)

*---

subschrift: optl, opt2, opt3 PROCEDURE LiteBer

PARAMETERS opno,menutitle

*---

Displey de menu title CLEAR

row ::: 5

e

1,1 TO 3,78 DOUBLE • 2,32 SAY menutitle

*---

Displey menu instructions . • 21,1 TO 24,78 DOUBLE

e

22,18 SAY "Selecteer opties met"

e

22,40 SAY CHR(24)+" of "+CHR(25)+" en druk -; +CHR(17)+CHR(217)

e

23,22 SAY "of toets het opties nummer in"

*---

Peint menu options on screen.

@ 7,15 row==8

DO WHILE row-7<== opno sub == STR(row-7,l)

opt&sub

=

IIF(Vel(opt&sub) "+OPt&sub,opt&sub)

@ row,15 SAY opt&sub row ::: row+1

ENDDO (row)

=

*---

Initielize memory veriebles. opt

=

1 sub == "1" sel == 0

*---

Reverse-video on option 1 @ 8,15 GET optl CLEAR GETS

*---

Loop voor het selecteren ven menu. keuze == 0

DO WHILE keuze

=

0 sel

=

0

*----

Weit for keypress

DO WHILE sel = 0 sel

=

INKEY() ENDDO (sel)

(60)

opt = IIF(sel = 24,opt+l,opt-l) opt = IIF(opt)opno,l,opt)

opt = IIF(opt(l,opno,opt) sub = STR(opt.l)

• opt+7,15 GET opt&sub CLEAR GETS LOOP ENDIF *--- Number pressed. IF sel>=49.AND.sel(49+opno keuze=sel-48

ENDIF (number pressed)

*---

return keypressed. IF sel=13

keuze=opt

ENDIF (Return Key) ENDDO

RETURN

~--- End of Litebar procedure.

PROCEDURE center

PARAMETERS tltle.rm,row

pad = SPACE((rm/2)-(LEN(TRIM(title))/2)) kolom

=

LEN (pad)

titlel

=

TRIM(title) @row,kolom SAY titlel RETURN

~***~~**~**~********~******************************~*~*~******~*

(61)

optl

=

·Oirectorie-opt2

=

"Neam invoeren"

opt3

=

-Terug near het hoofdmenu· Opties

=

3

Keuze

=

0

*---

Voorbereid loop DO WHILE keuze # opties

Opties

=

Titel

=

uINVOEREN-CLEAR

DO litebar WITH opties.titel DO CASE CASE keuze

=

1 DO dir_inv CASE keuze

=

2 DO inv_2 ENDCASE ENDOO

*---

terug near hoofdmenu geselecteerd keuze = 0

RETURN

Referenties

GERELATEERDE DOCUMENTEN

• de X-as: uren van de dag / blokken van vier uur, evenals de Y-as: % van de populatie tussen 4 en 5 meter diepte, zijn juist benoemd en op overzichtelijke wijze ingedeeld 1. •

• vanuit het ovaal ‘mensen en dieren’ naar het ovaal ‘VI’ pijl 12 getekend 1 Indien in een overigens juist antwoord een foutieve extra pijl is geplaatst, bijvoorbeeld:. -

Wanneer in een overigens juist antwoord een verkeerde stof of ionsoort is vermeld waarmee aluminiumionen kunnen worden neergeslagen, bijvoorbeeld wanneer een antwoord is gegeven

Aan de hand van deze aspecten kan in beginsel worden gezocht naar vergelijk bare gevallen. Opgenomen zijn tevens de redenen die bij de straftoemeting van belang zijn geoordeeld, en

Ga er bij de volgende vragen van uit dat Ans begint en dat beide spelers een kans van 1 2 hebben om goed te raden.. Het is mogelijk dat Ans het spel wint zonder dat Bert aan de

b) de eigenaar van de verbruiksinstallatie, de DSB of de GDSB een definitief en bindend contract heeft gesloten voor de aankoop van de belangrijkste verbruiksapparaten of

5) In de Reisproef heeft het inleveren van de parkeervergunning voor twee jaar tegengewerkt bij een aantal mensen om hun auto via de bonusregeling in te leveren. Als deze regeling

• Antwoordopties kunnen meer dan één keer gebruikt worden en niet alle antwoordopties hoeven gebruikt te worden?. • Zorg er voor dat u als u klaar bent, uw antwoorden op