German Optional Parameter

kaplanerkan

Member
Licensed User
Longtime User
Hallo,

da ich meine Daten aus MySQL lese, muss ich manchmal Optional-Parameter benutzen/übergeben. Wie kann ich ein Modul mit optionalen Parameter definieren?

wie zb in der Art:
Sub rechneBestellung(ByVal ID as Integer, Optional ByVal MenuNameNr as String = "")

danke
erkaN kaplaN
 

kaplanerkan

Member
Licensed User
Longtime User
Optionale Parameterübergebung gibt es nicht in B4A.

Beste Grüsse.

Ok, nicht so schlim :)
Dann definiere 2 Sub modul, und rufe jenachdem mit 1 oder 2 parameter ab...

Sub rechneBestellung1 (id as Int)
Sub rechneBestellung2 (id as Int, MenunameNr as String)
 

Jost aus Soest

Active Member
Licensed User
Longtime User
Sub rechneBestellung1 (id as Int)
Sub rechneBestellung2 (id as Int, MenunameNr as String)

Es wäre schön, wenn es in b4a - wie im darunterliegenden Java - wenigstens Overloading gäbe. Dann könnten nämlich die redundanten Zahlen hinter dem Funktionsnamen entfallen, also so:
B4X:
Sub rechneBestellung(id as Int)
Sub rechneBestellung(id as Int, MenunameNr as String)
Zumindest die Anzahl der Parameter weiß der PreCompiler ja sowieso! ;)
 

Jost aus Soest

Active Member
Licensed User
Longtime User
Was man auch machen kann ist eine einzige Routine und in der Variablen MenunameNr einen bestimmten Wert eingeben wenn dieser nicht benutzt werden soll und diesen in der Routine gemäss behandeln.

Du meinst etwa so:
B4X:
Sub rechneBestellung(id As Int, MenunameNr As Object)
  If MenunameNr = Null Then
    'Default...
  Else
    'Sonst...
  End If
End Sub
Und dann halt immer Null als Default übergeben?
 
Last edited:
Top