39

progressokulu.com Advanced Business Language Slide 4

Embed Size (px)

Citation preview

Page 1: progressokulu.com Advanced Business Language Slide 4
Page 2: progressokulu.com Advanced Business Language Slide 4

Bölüm 4 : Program Mantığı Geliştirmek

Bu dersi tamamladığımız zaman şunları yapabileceksiniz;

• Değişken tanımlamak ve kullanmak• Tarihlerle çalışmak• Sayılarla çalışmak• Tip dönüşümleri• Değerleri karşılaştırmak• Stringlerle çalışmak• Listelerle çalışmak• Fonksiyonlar oluşturmak• Koşullu dallanma ifadeleri

Page 3: progressokulu.com Advanced Business Language Slide 4

ASSIGN dAvailCredit = dCredLimit - dBal.DISPLAY "The available credit on" TODAY "is" dAvailCredit.

Operatör

Değişken

Fonksiyon

Deyim

Bir İfadenin Bileşenleri

Page 4: progressokulu.com Advanced Business Language Slide 4

Değişkenleri Kullanmak

DEFINE VARIABLE cTelefon AS CHARACTER NO-UNDO.DEFINE VARIABLE lEvet AS LOGICAL NO-UNDO.

cTelefon lEvet

Bellek

Page 5: progressokulu.com Advanced Business Language Slide 4

Bir Değişkene Değer Atamak

DEFINE VARIABLE cCumle AS CHARACTER INITIAL “Merhaba” NO-UNDO.

ASSIGN cCumle = “Merhaba”.

Çalışma zamanı:

Derleme zamanı:

Page 6: progressokulu.com Advanced Business Language Slide 4

Ne Tip Bir Değişken Kullanıyorum

c i

dt d

l

Page 7: progressokulu.com Advanced Business Language Slide 4

Görüntüleme Formatını Değiştirmek

ASSIGN Sayi = 12345.6543

DEFINE VARIABLE Sayi AS

INTEGERDECIMAL FORMAT “>>>>>.9”DECIMAL FORMAT “>>>>>.999”DECIMAL FORMAT “>>,>>>.99”

12346

12345.7

12345.654

12,345.65

Page 8: progressokulu.com Advanced Business Language Slide 4

Uygulama 1 : Değişken Tanımlamak

Page 9: progressokulu.com Advanced Business Language Slide 4

Tarih Fonksiyonları

DAY(dtTarih)

DEFINE VARIABLE dtTarih AS DATE INITIAL “01/02/2006” NO-UNDO.

MONTH(dtTarih) YEAR(dtTarih)

2 1 2006

Page 10: progressokulu.com Advanced Business Language Slide 4

Tarihlerle Çalışmak

Page 11: progressokulu.com Advanced Business Language Slide 4

Değerlendirme Sırası

Bonus = ((dKota / dTSatis) * TabanOdeme) + 1000.

1. Çarpma 2. Bölme 3. Toplama 4. Çıkarma 5. Modulo

1 2 3

Page 12: progressokulu.com Advanced Business Language Slide 4

MODULO’yu Nasıl Kullanırım

TRUNCATE((VacationDaysLeft / 5),0)

VacationDaysLeft MODULO 5

Kalan haftalar:

Kalan günler:

Page 13: progressokulu.com Advanced Business Language Slide 4

Sayısal Veriyi Dönüştürmek

DEFINE VARIABLE dTest AS DECIMAL FORMAT 999.9999 NO-UNDO INITIAL 350.9875 .

Page 14: progressokulu.com Advanced Business Language Slide 4

Uygulama 2 : Tarihler ve Sayılar

Page 15: progressokulu.com Advanced Business Language Slide 4

Stringleri Birleştirmek

cTamAd = cİlkAd + " " + cİkinciAd + ". " + cSoyad.

Boşluk

Nokta ve boşluk

Page 16: progressokulu.com Advanced Business Language Slide 4

Argüman Yerleştirmek

cTamAd = SUBSTITUTE("&1 &2.&3",

cIlkAd,cIkinciAd, cSoyad.

Page 17: progressokulu.com Advanced Business Language Slide 4

INTEGER Veri Tipini Değiştirmek

INTEGER(Orderline.Price * Orderline.Qty)

Page 18: progressokulu.com Advanced Business Language Slide 4

Büyük – Küçük Harf Değişimi

ASSIGN cBuyuk = CAPS(Customer.NAME) cKucuk = LC(Customer.NAME).

Page 19: progressokulu.com Advanced Business Language Slide 4

Stringe Dönüştürmek

ASSIGN

cTarihCumle = “Şu anda tarih " +

STRING(TODAY)

cSaat = STRING(TIME, "hh:mm:ss")

cSaatCumle = “ve saat " + cSaat.

Page 20: progressokulu.com Advanced Business Language Slide 4

Tarihe Dönüştürmek

/* eDateString.p */

DISPLAY

"Convert to date from integers (2,29,2004):"

DATE(2,29,2004)

SKIP

"Convert to date from string ('2/29/04'):"

DATE('2/29/04').

Page 21: progressokulu.com Advanced Business Language Slide 4

Karışılaştırma Operatörleri

Sembol Anahtar İşlem

= EQ Eşittir<> NE Eşit değildir > GT Büyüktür < LT Küçüktür>= GE Büyük eşittir<= LE Küçük eşittir

Page 22: progressokulu.com Advanced Business Language Slide 4

String İşlemleri

ABCDEFG cStringLength: 10

cSubString = BCDE

Üçüncü karakter

cSubString2 = CDEF

cTrimStringLength: 7

ABCDEFG

Page 23: progressokulu.com Advanced Business Language Slide 4

REPLACE Fonksiyonunu Kullanmak

ASSIGN cDeptList = REPLACE(cDeptList, ",", "|").

İlk liste

Değişen Liste

,100,200,300,400,500,600,700

|100|200|300|400|500|600|700

Page 24: progressokulu.com Advanced Business Language Slide 4

Listede Bir Girdiyi Bulmak İçin LOOKUP Kullanmak

cListe = “Danışmanlık,Yönetim,Pazarlama,Satış,Eğitim”.

LOOKUP(“Satış”,cliste)

LOOKUP(“Yönetim”,cliste)

2 döndürür

4 döndürür

LOOKUP(“İnsan Kaynakları”,clist)

0 döndürür

Page 25: progressokulu.com Advanced Business Language Slide 4

Bir Listedeki Girdiler

cListe: girdi1, girdi2, girdi3, girdi4, girdi5, girdi6

NUM-ENTRIES(cListe) =6

ENTRY(3,cListe)

Page 26: progressokulu.com Advanced Business Language Slide 4

Kaç Girdi Var?

NUM-ENTRIES = 4

GİRDİ numarası

Page 27: progressokulu.com Advanced Business Language Slide 4

Liste Girdilerini Değiştirmek

North,South,East,West.

Nord, Sud, Est, Ouest.

Page 28: progressokulu.com Advanced Business Language Slide 4

Uygulama 3 : Veri Tipleri, Karşılaştırmalar, Stringler, Listeler ve Fonksiyonlar

Page 29: progressokulu.com Advanced Business Language Slide 4

Koşullu Dallanmalar

Bugün ayın ilk günü mü? Öyleyse, aylık raporumu

göndermemin zamanı gelmiş.

Page 30: progressokulu.com Advanced Business Language Slide 4

Koşullu Dallanma

Kullanılabilir kredi 800’den küçük veya eşit mi? Hayır -- OK

Evet -- reddedildi

Page 31: progressokulu.com Advanced Business Language Slide 4

DO Bloklarıyla IF THEN ELSE

Kullanılabilir kredi 800’den küçük veya eşit mi?

Hayır – boş bırak

Evet – Uyarı mesajı ekle

Page 32: progressokulu.com Advanced Business Language Slide 4

CASE ile Koşullu Dallanma

Page 33: progressokulu.com Advanced Business Language Slide 4

Bir CASE için Varsayılan Davranış

VacationDaysLeft

02

0, 1 ya da 2 değil

Page 34: progressokulu.com Advanced Business Language Slide 4

IF... THEN ‘in İki Tipi

IF... THEN DO: action1END.ELSE DO: action2END.

IF...THEN expression1

ELSE expression2.

İfade Fonksiyon

Page 35: progressokulu.com Advanced Business Language Slide 4

Bir Uyarı Kutusuyla Koşullu Dallanma

EVET HAYIR

Page 36: progressokulu.com Advanced Business Language Slide 4

Adımlar

DO WHILE deyim:Satır1.Satır2.Satır3.

END.

Page 37: progressokulu.com Advanced Business Language Slide 4

Uygulama 4 : Koşullu Dallanma

Page 38: progressokulu.com Advanced Business Language Slide 4
Page 39: progressokulu.com Advanced Business Language Slide 4