Español
Incluye

ListView2ODBC / ODBC2ListView

 

ByteAttack
1.) Diese Incluir-Expediente para Profano ermöglicht lo con sólo zwei Befehlen porque kompletten Inhalt uno ListView´s en un ODBC-Datenbank a speichern.

2.)Importiert una SQL-String en una ListView

Más Informationen en:
[...] 
KompilierenMarcaSeparación
Declare LVODBC_DSN%,LVODBC_DSN$,LVODBC_TAB$,LVODBC_AnzS%,LVH&,C$
C$=CHR$(34)
Start
Dim$ 64 maximal 64Spalten pro Listview
SQLSETDEL ;
SQLSETNULL
Konvertiert das Datum ins Datenbankformat

Proc LVODBC_DATUM

    Parameters Datum$
    Datum$=#+Translate$(Datum$,.,/)+#
    Return Datum$

EndProc

#####################################################
SetODBCSpalten
Fülle Liste mit Typen der Spalten
S : String - Typ der Spalte
D=Datum Z=Zahl T=Text
Beispiel:
SetODBCSpalten ZTTTDTZ
#####################################################

Proc SetODBCSpalten

    Parameters String$
    Declare Index%,Lang%,w%,Zeichen$
    Lang%=Len(String$)
    LVODBC_AnzS%=Lang%

    WhileNot w%

        if Index%=Lang%

            w%=1

        else

            Zeichen$=Mid$(String$,(Index%+1),1)
            LIST$ Index%=Zeichen$
            Inc Index%

        endif

    Wend

EndProc

Erstellt neue Tabelle

Proc LVODBC_NewTable

    Declare SQLString$,spalt#,name&,name$,Index%,w%,Typ$,L%
    Dim spalt#,255
    SQLString$=CREATE TABLE +LVODBC_TAB$+ (

    WhileNot w%

        if Index%=LVODBC_AnzS%

            w%=1

        else

            name&=GetColumnName(LVH&,spalt#,Index%)
            name$=String$(spalt#,0)
            Typ$=List$(Index%)
            Case Typ$=T:Typ$=TEXT
            Case Typ$=Z:Typ$=REAL
            Case Typ$=D:Typ$=DATE
            SQLString$=SQLString$+name$+ +Typ$+,
            Inc Index%

        endif

    wend

    SQLString$=Left$(SQLString$,Len(SQLString$)-2)+)
    SQLExec SQLString$,1
    Dispose spalt#

EndProc

Dei eigentliche Routine des Exports

Proc LVODBC_Export

    Declare Zeilen%,bereich#,text$,Spalte%,Zeilen&,ZeilenIndex%,z%,s%,SpaltenIndex%,SQLS$,name&,name$,Typ$,SQLStd$,SQL$
    Dim bereich#,256
    Zeilen&=GetLines(LVH&)
    Zeilen%=Zeilen&
    Spalte%=LVODBC_AnzS%
    SQLStd$=INSERT INTO +LVODBC_TAB$+ (

    WhileNot s%

        if SpaltenIndex%>Spalte%

            s%=1

        else

            name&=GetColumnName(LVH&,bereich#,SpaltenIndex%)
            name$=String$(bereich#,0)
            Typ$=List$(SpaltenIndex%)
            SQLStd$=SQLStd$+name$+,
            inc SpaltenIndex%

        endif

    Wend

    SQLStd$=Left$(SQLStd$,Len(SQLStd$)-2)+) VALUES (
    SpaltenIndex%=0
    s%=0

    WhileNot z%

        if ZeilenIndex%=Zeilen%

            z%=1

        else

            WhileNot s%

                if SpaltenIndex%>Spalte%

                    s%=1

                else

                    GetItemText(LVH&,bereich#,SpaltenIndex%,ZeilenIndex%)
                    text$=String$(bereich#,0)
                    Typ$=List$(SpaltenIndex%)

                    if Typ$=T

                        text$=Translate$(text$,,´)
                        SQLS$=SQLS$++text$+,

                    elseif Typ$=Z

                        text$=Translate$(text$,,,.)
                        SQLS$=SQLS$+text$+,

                    elseif Typ$=D

                        LVODBC_DATUM text$
                        SQLS$=SQLS$+$(0)+,

                    endif

                    Inc SpaltenIndex%

                endif

            Wend

            SQLS$=Left$(SQLS$,Len(SQLS$)-2)
            SQL$=SQLStd$+SQLS$+)
            SQLExec SQL$,1
            s%=0
            SpaltenIndex%=0
            SQL$=
            SQLS$=
            Inc ZeilenIndex%

        endif

    Wend

    Dispose bereich#

EndProc

#####################################################
LV2ODBC
Exportiert die Listview
S1 : String  - DSN String (Siehe Profan Hilfe SQLInit)
N1 : Integer - 0=Die Datenbank wurde schon in dem Hauptprogramm geöffnet.
1=Die Datenbank wird mit der Include geöffnet.
S2 : String  - Tabellenname
N2 : Integer - 0=Tabelle nicht vorhanden, eine neue wird erstellt
1=Tabelle ist in der Datenbank schon vorhanden
N3 : Long    - Handle der Listview
#####################################################

Proc LV2ODBC

    Parameters DSN$,DSN%,Table$,tbl%,LVH&

    if DSN%=1

        LVODBC_DSN%=1
        SQLINIT(DSN=+DSN$)

    endif

    LVODBC_DSN$=DSN$
    LVODBC_TAB$=Table$
    Case tbl%=0:LVODBC_NewTable
    UseCursor 2
    LVODBC_Export
    UseCursor 0
    Case LVODBC_DSN%=1:SQLDone

EndProc

#####################################################
LVSQL
Importiert einen SQL-String in ein ListView
S : String - Der SQL-String
N : Long - Handle des Listview
#####################################################

Proc LVSQL

    Parameters SQLString$,LVH&
    Declare Datei$,Zeile$,bytes&,bereich#,w%,String$,Index%
    SQLEXEC SQLString$,2
    Datei$=SQL.DAT
    Assign #1,Datei$
    Reset #1
    Input #1,Zeile$
    Close #1
    Index%=1
    DeleteAllItems(LVH&)

    WhileNot w%

        String$=SubStr$(Zeile$,Index%,;)

        if Len(String$)=0

            w%=1

        else

            InsertColumn LVH&,String$,120,0
            Inc Index%

        endif

    Wend

    InsertColumn LVH&,,0,0
    bytes&=FileSize(Datei$)

    If bytes&>0

        Dim bereich#,bytes&
        ReadFileQuick(addr(Datei$),bereich#,0,bytes&)
        ShowWindow(LVH&,0)
        CsvToListview(LVH&,bereich#,bytes&,Index%)
        Dispose bereich#
        DeleteColumn (LVH&,Index%-1)
        DeleteItem (LVH&,0)
        ShowWindow(LVH&,1)

    Endif

ENDPROC


2 kB
Hochgeladen:27.04.2005
Ladeanzahl237
Descargar
 
Website:  [...] 
Facebook:  [...] 
27.04.2005  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

4.770 Views

Untitledvor 0 min.
ByteAttack09.07.2020
Klaus Kohlhepp17.03.2020
Michael Borowiak12.12.2019
p.specht18.03.2019
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

ByteAttack (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie