Primer cal afegir la configuració correcte al IISConfig.xml, dintre del node EntornBBDD

<EntornBBDD>
  <BBDD id="LOCAL.IB.GERMANY" actiu="no">
    <Tipus>MySQL</Tipus>
    <Host>WS2019</Host>
    <BD>ib_a20174_ecoalf_germany</BD>
    <Usuari encriptat="no">root</Usuari>
    <Contrasenya encriptat="no">XXX</Contrasenya>
  </BBDD>
  <BBDD id="LOCAL.MYSQL80.fxmoda" actiu="si">
    <Tipus>MySQL</Tipus>
    <Host>WS2019:3307</Host>
    <BD>fxmoda</BD>
    <Usuari encriptat="no">root</Usuari>
    <Contrasenya encriptat="no">XXXX</Contrasenya>
  </BBDD>
</EntornBBDD>

En aquest cas hi ha dos entorn diferents, el primer està desactivat i no funcionarà

Des d’un connector del IIService es pot utilitzar aquest entorn per fer consultes a aquesta base de dades MySQL.

Aquí hi ha un troç de codi VB.Net d’exemple:

Imports IISCommon
Imports IISDBCommon
Imports IISUtils

Module Eines

    Public Sub registrar()
        Eina.registrar("IISC4ProvesVB.Prova1", "Eina de proves 1 (Connexio MySQL amb EntornBBDD)", AddressOf einaDeProves1)
    End Sub

    Public Function einaDeProves1(parametres As ParametresXml) As ResultatOperacio

        Dim resultat As ResultatOperacio = New ResultatOperacio(registre)

        resultat.afegir("[+] Inici de la prova 1")

        Dim entorn As EntornBBDD = EntornBBDD.obtenirEntorn("LOCAL.MYSQL80.fxmoda")
        If (Not entorn Is Nothing) Then

            Dim dades As Resultats = entorn.executarSQL("SELECT * FROM divisas")

            If (dades.hihaDades) Then
                For i = 0 To dades.numRegistres - 1
                    resultat.afegir($"{i:000} -> DIVISA=[{dades.obtenirValor("divisa", i)}] DESCRIPCIO=[{dades.obtenirValor("descripcion", i)}]")
                Next
            Else
                resultat.afegir("[!] No hi ha dades")
            End If
        Else
            resultat.afegir("El entorn no esta al IISConfig.xml dintre del node EntornBBDD")
        End If

        resultat.afegir("[+] Final de la prova 1")

        resultat.establirResultat(TipusResultat.correcte).establirDescripcio("Prova 1 executada correctament")

        Return resultat

    End Function

End Module

Punts importants:

Dim entorn As EntornBBDD = EntornBBDD.obtenirEntorn("LOCAL.MYSQL80.fxmoda")

En aquesta línia obtenim l’entorn que hi ha configurat al IISConfig.xml. Important comprobar que la funció obtenirEntorn torni un entorn vàlid.

Dim dades As Resultats = entorn.executarSQL("SELECT * FROM divisas")

Aquí fem una crida a una consulta del MySQL que ens tornarà les dades dintre de l’objecte de la classe Resultats

En aquest cas, si tot va bé, el resultat obtingut es:

Hi ha un projecte al GitLab amb tot aquest codi i altres proves: https://codi.davidmarti.cat/desenvolupament/iisc4provesvb.git