wanure
Messages postés39Date d'inscriptionlundi 13 septembre 2010StatutMembreDernière intervention23 novembre 2012
-
27 janv. 2006 à 14:20
wanure
Messages postés39Date d'inscriptionlundi 13 septembre 2010StatutMembreDernière intervention23 novembre 2012
-
27 janv. 2006 à 15:20
Bonjour,
Je suis actuellement en stage dans une entreprise de développement de logiciels dans le cadre d'un BTS info, et on me demande de travailler à partir d'un code d'un autre développeur, dont il y a une partie que je ne comprends pas (en rouge plus bas).
Si quelqu'un peut me l'expliquer, ce serait génial, merci d'avance!!
Public Function ExecselectAdmin(Optional VAverrou As Variant, Optional VAtypeset As Variant, Optional VArecordset As Variant) As Integer
'cette fonction permet d'éxécuter un ordre sql et de verifier si enreg en rapport avec l'ordre
'l'ordre à éxécuter a été initialisé par la procèdure InitSQL
'le resultset ou le recordset éxécuté est sauvegardé dans la variable de niveau projet VPjeuenreg
'les trois paramètres sont optionnels; le premier permet de vérouiller les enregistrements à lire en passant valeur Cverrou
'le deuxième permet de constituer un jeu d'enreg en lecture seule en avant seulement en passant en param la valeur cenavant
'le 3ième permet de spécifier un autre recordset que le recordset générique VPjeuenreg pour le
'stockage du resultat de la requête; cela permettra notamment de gérer un vérouillage sur le recordset passé
'en paramètre jusqu'à ce que un ordre close soit passé sur ce recordset
Dim ILtypeverrou As Integer
Dim ILtypejeu As Integer
Dim OLrecordset As dao.Recordset
Dim OLresultset As New ADODB.Recordset
Dim OLwerrloop As dao.Error
If IsMissing(VAverrou) Then ILtypeverrou dbReadOnly Else ILtypeverrou VAverrouIf IsMissing(VAtypeset) Then ILtypejeu dbOpenSnapshot Else ILtypejeu VAtypeset
spa666
Messages postés39Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention24 février 2006 27 janv. 2006 à 15:17
dbReadOnly et dbOpenSnapshot sont des constantes pour l acces aux donnees.
dbReadOnly signifie : "Interdit aux utilisateurs d'apporter des modifications à l'objet Recordset."
dbOpenSnapshot signifie : "Ouvre un objet Recordset de type Instantané, identique à un curseur statique(une fois le recordset cree, on ne voit pas les modification en base sans le remettre a jour) ODBC."
wanure
Messages postés39Date d'inscriptionlundi 13 septembre 2010StatutMembreDernière intervention23 novembre 2012 27 janv. 2006 à 14:22
Plus précisemment, c'est la partie soulignée que je ne comprends pas!!
If IsMissing(VAverrou) Then ILtypeverrou dbReadOnly Else ILtypeverrou VAverrouIf IsMissing(VAtypeset) Then ILtypejeu dbOpenSnapshot Else ILtypejeu VAtypeset
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 27 janv. 2006 à 14:35
Salut,
Ceci est tire de la MSDN:
Renvoie une valeur de type Boolean qui indique si unargument facultatif de type Variant a été passé dans uneprocédure.
Syntaxe
IsMissing(argname)
L'argument argname contient le nom d'un argument facultatif de type Variant dans une procédure.
Remarques
Utilisez la fonction IsMissing pour déterminer si des arguments facultatifs ont été fournis lors de l'appel d'une procédure. La fonction IsMissing renvoie la valeur True si aucune valeur correspondant à l'argument spécifié n'a été passée ; sinon, elle renvoie la valeur False. Si la fonction IsMissing renvoie la valeur True pour un argument, l'utilisation de l'argument manquant ailleurs dans le code peut provoquer une erreur définie par l'utilisateur. Si la fonction IsMissing est utilisée sur un argument ParamArray, elle renvoie toujours la valeur False. Pour détecter un argument ParamArray vide, effectuez un test afin de déterminer si la limite maximale dutableau est inférieure à sa limite minimale.
Note La fonction IsMissing ne fonctionne pas sur les types de données simples (tels que les types Integer ou Double) car, contrairement au type Variant, ces types ne fournissent pas d'indicateur de bit "manquant". C'est pourquoi la syntaxe des arguments facultatifs caractérisés par un type vous permet d'indiquer une valeur par défaut. Si l'argument est omis lors de l'appel de la procédure, il aura la valeur par défaut, comme dans l'exemple ci-dessous :
Sub MySub(Optional MyVar As String = "valeur spéciale")
If MyVar = "valeur spéciale" Then
' MyVar était omis.
Else
...
End Sub
Vous pouvez le plus souvent omettre complètement le test If MyVar en attribuant à la valeur par défaut la valeur souhaitée pour MyVar dans le cas où l'utilisateur omettrait l'argument lors de l'appel de la fonction. Cette méthode est plus rapide et plus efficace.