The following sections contain information about working with parameters: Bagian berikut berisi informasi tentang bekerja dengan parameter:
- Defining Parameters in Procedures and Functions Mendefinisikan Parameter dalam Prosedur dan Fungsi
- Passing Data to Procedures and Functions Melewati Data untuk Prosedur dan Fungsi
Defining Parameters in Procedures and Functions Mendefinisikan Parameter dalam Prosedur dan Fungsi
When a program passes data to a procedure or function, the parameters in the procedure or function handles that data so the procedure or function can perform operations on the data. Ketika program lewat data ke prosedur atau fungsi, parameter dalam prosedur atau fungsi yang menangani data sehingga prosedur atau fungsi dapat melakukan operasi pada data. When you want to create procedures and functions that process data that the calling program passes to them, you need to include parameters in the procedure and function definitions. Bila Anda ingin membuat prosedur dan fungsi yang memproses data bahwa program memanggil lolos ke mereka, Anda perlu menyertakan parameter dalam prosedur dan definisi fungsi.
The following lines of code illustrate the basic format for including parameters in procedure definition: Baris kode berikut mengilustrasikan format dasar untuk termasuk parameter dalam definisi prosedur:
For example, the following examples show procedure definitions that include parameters. Misalnya, contoh berikut menunjukkan definisi prosedur yang mencakup parameter. The first procedure includes an LPARAMETERS statement and two parameters, myPar1 and myPar2 . Prosedur pertama mencakup pernyataan LPARAMETERS dan dua parameter, myPar1 dan myPar2. The second procedure lists the same parameters enclosed by parentheses (()) immediately following the procedure name. Prosedur kedua daftar parameter yang sama tertutup dengan tanda kurung (()) segera setelah nama prosedur. Both procedures add the value in myPar2 to myPar1 and assign the result to myPar1 . Kedua prosedur menambah nilai dalam myPar2 untuk myPar1 dan menetapkan hasil untuk myPar1. By default, data passes to procedures by reference, so the new value of myPar1 replaces its original value. Secara default, data yang lolos ke prosedur dengan referensi, sehingga nilai baru myPar1 menggantikan nilai aslinya.
The following lines of code illustrate the basic format for including parameters in procedure definition: Baris kode berikut mengilustrasikan format dasar untuk termasuk parameter dalam definisi prosedur:
-OR- -ATAU-
The first procedure includes an LPARAMETERS statement that can contain one or more parameters. Prosedur pertama mencakup pernyataan LPARAMETERS yang dapat mengandung satu atau lebih parameter. The second procedure lists the same parameters enclosed by parentheses (()) immediately following the procedure name. Prosedur kedua daftar parameter yang sama tertutup dengan tanda kurung (()) segera setelah nama prosedur. Using the LPARAMETERS statement or enclosing the parameter list in parentheses defines the parameters with local scope for the procedure. Menggunakan pernyataan LPARAMETERS atau melampirkan daftar parameter dalam tanda kurung mendefinisikan parameter dengan lingkup lokal untuk prosedur. You can also use the PARAMETERS keyword instead of LPARAMETERS to accept privately scoped parameters. Anda juga dapat menggunakan kata kunci PARAMETER bukan LPARAMETERS untuk menerima parameter pribadi scoped. You can pass multiple values to a procedure or function by separating the values with commas. Anda dapat memberikan beberapa nilai untuk sebuah prosedur atau fungsi dengan memisahkan nilai-nilai dengan koma.
For example, the following examples show procedure definitions that include parameters. Misalnya, contoh berikut menunjukkan definisi prosedur yang mencakup parameter. The first procedure includes an LPARAMETERS statement and two parameters, myPar1 and myPar2 . Prosedur pertama mencakup pernyataan LPARAMETERS dan dua parameter, myPar1 dan myPar2. The second procedure lists the same parameters enclosed by parentheses (()) immediately following the procedure name. Prosedur kedua daftar parameter yang sama tertutup dengan tanda kurung (()) segera setelah nama prosedur. Both procedures add the value in myPar2 to myPar1 and assign the result to myPar1 . Kedua prosedur menambah nilai dalam myPar2 untuk myPar1 dan menetapkan hasil untuk myPar1. By default, data passes to procedures by reference, so the new value of myPar1 replaces its original value. Secara default, data yang lolos ke prosedur dengan referensi, sehingga nilai baru myPar1 menggantikan nilai aslinya.
-OR- -ATAU-
You can include parameters similarly in a function definition. Anda dapat menyertakan parameter sama dalam definisi fungsi. For more information, see PROCEDURE Command , FUNCTION Command , LPARAMETERS Command , and PARAMETERS Command . Untuk informasi lebih lanjut, lihat PROSEDUR Komando , Komando FUNGSI , Komando LPARAMETERS , dan Komando PARAMETER .
Passing Data to Procedures and Functions Melewati Data untuk Prosedur dan Fungsi
You can pass data, or specifically, "arguments", from your program to procedures and functions in different ways, depending on the following: Anda dapat melewatkan data, atau secara khusus, "argumen", dari program Anda untuk prosedur dan fungsi dalam cara yang berbeda, tergantung pada berikut:
Alternatively, if you want to use the DO command but want to pass data by value, enclose each parameter with parentheses (()) as shown in the following example: Atau, jika Anda ingin menggunakan perintah DO tapi ingin mengirimkan data dengan nilai, melampirkan setiap parameter dengan tanda kurung (()) seperti yang ditunjukkan dalam contoh berikut:
By default, variables and arrays pass to user-defined functions by value. Secara default, variabel dan array lolos ke fungsi pengguna-ditentukan oleh nilai. Therefore, changes made in the function to passed variables and arrays are not passed back to the calling program. Oleh karena itu, perubahan yang dibuat dalam fungsi untuk variabel berlalu dan array tidak lulus kembali ke program menelepon. However, you can pass variables and arrays by reference by prefacing variables and arrays with the at sign (@) as shown in the following line of code: Namun, Anda dapat melewatkan variabel dan array dengan referensi oleh prakata variabel dan array dengan tanda di (@) seperti ditunjukkan pada baris kode berikut:
The following table summarizes the ways you can pass variables to procedures and functions in the example. Tabel berikut merangkum cara-cara Anda dapat melewatkan variabel prosedur dan fungsi dalam contoh.
- Whether you want to pass data by reference or by value. Apakah Anda ingin untuk melewatkan data dengan referensi atau dengan nilai. For more information, see Passing Data to Parameters . Untuk informasi lebih lanjut, lihat Melewati Data Parameter .
- How you call the procedure or function. Bagaimana Anda memanggil procedure atau fungsi. For more information, see How to: Call Procedures and Functions . Untuk informasi lebih lanjut, lihat Cara: Panggilan Prosedur dan Fungsi .
By default, variables and arrays pass to procedures by reference. Secara default, variabel dan array lolos ke prosedur dengan referensi. Therefore, changes made in the procedure to passed variables and arrays are passed back to the calling program. Oleh karena itu, perubahan yang dibuat dalam prosedur untuk variabel array berlalu dan berlalu kembali ke program menelepon. For example, suppose the procedure increments the value in myVar by the value in myVar2 . Sebagai contoh, misalkan prosedur kenaikan nilai dalam myVar oleh nilai myVar2. The modified value of myVar becomes the new value of myVar when the procedure returns control to the calling program. Nilai dimodifikasi myVar menjadi nilai baru myVar ketika prosedur mengembalikan kontrol ke program menelepon.
Alternatively, if you want to use the DO command but want to pass data by value, enclose each parameter with parentheses (()) as shown in the following example: Atau, jika Anda ingin menggunakan perintah DO tapi ingin mengirimkan data dengan nilai, melampirkan setiap parameter dengan tanda kurung (()) seperti yang ditunjukkan dalam contoh berikut:
When you call a function, you can pass data using a parameter list enclosed in parentheses (()) as shown in the following line of code: Bila Anda memanggil sebuah fungsi, Anda dapat melewatkan data menggunakan daftar parameter dalam tanda kurung (()) seperti ditunjukkan pada baris kode berikut:
By default, variables and arrays pass to user-defined functions by value. Secara default, variabel dan array lolos ke fungsi pengguna-ditentukan oleh nilai. Therefore, changes made in the function to passed variables and arrays are not passed back to the calling program. Oleh karena itu, perubahan yang dibuat dalam fungsi untuk variabel berlalu dan array tidak lulus kembali ke program menelepon. However, you can pass variables and arrays by reference by prefacing variables and arrays with the at sign (@) as shown in the following line of code: Namun, Anda dapat melewatkan variabel dan array dengan referensi oleh prakata variabel dan array dengan tanda di (@) seperti ditunjukkan pada baris kode berikut:
The following table summarizes the ways you can pass variables to procedures and functions in the example. Tabel berikut merangkum cara-cara Anda dapat melewatkan variabel prosedur dan fungsi dalam contoh.
Procedure or function call Prosedur atau fungsi panggilan | Comments Komentar |
---|---|
DO myProcedure WITH var1, var2, ... LAKUKAN DENGAN myProcedure var1, var2 ... | Calls a procedure and passes variables by reference. Panggilan prosedur dan melewati variabel dengan referensi. |
DO myProcedure WITH (var1), (var2), ... DO myProcedure DENGAN (var1), (var2), ... | Calls a procedure and passes variables by value. Panggilan prosedur dan melewati variabel dengan nilai. |
myFunction(var1, var2, ...) myFunction (var1, var2, ...) | Calls a function and passes variables by value. Fungsi panggilan dan melewati variabel dengan nilai. |
myFunction(@var1, @var2, ...) myFunction (@ var1, var2 @, ...) | Calls a function and passes variables by reference. Fungsi panggilan dan melewati variabel dengan referensi. |
0 comment:
Posting Komentar