Italia
Fonte/ Codesnippets

Formatierer Source

 
- Page 1 -



Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Source-Formatierer
##########################################################################
PRF-Struktur, a Profan OpenSource Project(theFirst?),started april 2004
Copyright (C) 2004 by DS/iF (!ReGeXiT) on (iF@mxii.com)
__________________________________________________________________________
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 1.1
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-
1307, USA.
__________________________________________________________________________
Source changed by: [20040707] [IF] [if@mxii.com] <- added xpse syntax
Source changed by: [DATE] [NICK/NAME] [EML]
Source changed by: [DATE] [NICK/NAME] [EML]
Source changed by: [DATE] [NICK/NAME] [EML]
Source changed by: [DATE] [NICK/NAME] [EML]
##########################################################################
Decimals 0
Def Inv(1) If(@%(1),0,1)
Declare S$,Cx%,Ch$,Kl%,Ln%,Insa%,Pre$,Infle$,Maxinsa%,Maxln%,Frl%,Lnp%

Proc _end

    End

Endproc

Proc Printfree

    Ifnot Frl%

        Print #2,
        Frl%=1
        Add Lnp%,1

    Endif

Endproc

Proc Printit

    Parameters S$
    Print #2,S$
    Add Lnp%,1
    Frl%=0

Endproc

Proc Printm

    Parameters S$,N%
    Print S$,N%
    Sleep 1000
    Close #1
    Close #2
    Shell notepad _out_.txt
    Waitkey
    End

Endproc

Windowtitle Struktur V1.0 - Profan
Windowstyle 24
Window 100,100 - 640,480
Frl%=0
Lnp%=0
Infle$=Loadfile$(Profan-Programm:,Profan-Quellcode (*.prf)|*.prf|Alle File (*.*)|*.*)

If Len(Infle$)

    Assign #1,Infle$
    Reset #1
    Assign #2,_out_.txt
    Rewrite #2
    Locate 1,1
    Print File:,Infle$
    Kl%=0
    Ln%=0
    Insa%=0
    Maxinsa%=0
    Maxln%=0

    Whilenot Eof(#1)

        Input #1,S$
        S$=Translate$(S$,Chr$(7),)
        S$=Translate$(S$,Chr$(9),)
        Add Ln%,1

        While Or(Equ$(Chr$(9),Mid$(S$,1,1)),Equ$(Chr$(32),Mid$(S$,1,1)))

            S$=Del$(S$,1,1)

        Wend

        Casenot Len(Trim$(S$)) : Continue

        Ifnot Mod(Lnp%,25)

            Locate 2,1
            Print Zeilen:,Lnp%
            Print maximale Tiefe:,Maxinsa%+1

        Endif

        Case Kl% : Printm string parse error in line:,Lnp%

        Ifnot Equ$(Mid$(S$,1,3),P +Chr$(34))

            Cx%=0

            While Lt(Cx%,Len(S$)+1)

                Add Cx%,1
                Ch$=Mid$(S$,Cx%,1)

                If Equ$(,Ch$)

                    Ifnot Kl%

                        S$=Mid$(S$,1,Cx%-1)

                    Endif

                Endif

                Case Equ$(Ch$,Chr$(34)) : Kl%=Inv(Kl%)

                Ifnot Kl%

                Endif

            Wend

            Case Equ$(WHILE ,Upper$(Mid$(S$,1,6))) : Printfree
            Case Equ$(REPEAT,Upper$(Mid$(S$,1,6))) : Printfree
            Case Equ$(WEND,Upper$(S$)) : Printfree
            Case Equ$(UNTIL,Mid$(Upper$(S$),1,5)) : Printfree
            Case Equ$(ENDWHILE,Upper$(S$)) : Printfree
            Case Equ$(WHILENOT ,Upper$(Mid$(S$,1,9))) : Printfree
            Case Equ$(WHILELOOP ,Upper$(Mid$(S$,1,10))) : Printfree
            Case Equ$(IF ,Upper$(Mid$(S$,1,3))) : Printfree
            Case Equ$(IFNOT ,Upper$(Mid$(S$,1,6))) : Printfree
            Case Equ$(PROC ,Upper$(Mid$(S$,1,5))) : Printfree
            Case Equ$(FUNCTION ,Upper$(Mid$(S$,1,9))) : Printfree
            Case Equ$(PROCEDURE ,Upper$(Mid$(S$,1,10))) : Printfree
            Case Equ$(ENDPROC,Upper$(S$)) : Sub Insa%,1
            Case Equ$(ENDIF,Upper$(S$)) : Sub Insa%,1
            Case Equ$(ENDIF,Upper$(S$)) : Printfree

            If Equ$(ELSEIF ,Upper$(Mid$(S$,1,7)))

                Sub Insa%,1
                Printfree

            Elseif Equ$(ELSE,Upper$(Mid$(S$,1,4)))

                Printfree
                Sub Insa%,1

            Endif

            Case Equ$(UNTIL,Upper$(Mid$(S$,1,5))) : Sub Insa%,1
            Case Equ$(WEND,Upper$(Mid$(S$,1,4))) : Sub Insa%,1
            Case Equ$(ENDWHILE,Upper$(Mid$(S$,1,8))) : Sub Insa%,1
            Case Lt(Insa%,0) : Printm Insafailure in line:,Lnp%

            If Gt(Insa%,Maxinsa%)

                Maxinsa%=Insa%
                Maxln%=Lnp%

            Endif

            Pre$=Mkstr$(Chr$(9),Insa%)

            If Len(Trim$(S$))

                Printit Add$(Pre$,S$)

            Endif

            Case Equ$(REPEAT,Upper$(Mid$(S$,1,6))) : Add Insa%,1
            Case Equ$(WHILE ,Upper$(Mid$(S$,1,6))) : Add Insa%,1
            Case Equ$(WHILENOT ,Upper$(Mid$(S$,1,9))) : Add Insa%,1
            Case Equ$(WHILELOOP ,Upper$(Mid$(S$,1,10))) : Add Insa%,1

            If Equ$(ELSEIF ,Upper$(Mid$(S$,1,7)))

                Add Insa%,1
                Printfree

            Elseif Equ$(ELSE,Upper$(Mid$(S$,1,4)))

                Printfree
                Add Insa%,1

            Endif

            Case Equ$(PROC ,Upper$(Mid$(S$,1,5))) : Add Insa%,1
            Case Equ$(PROCEDURE ,Upper$(Mid$(S$,1,10))) : Add Insa%,1
            Case Equ$(FUNCTION ,Upper$(Mid$(S$,1,09))) : Add Insa%,1
            Case Equ$(IF ,Upper$(Mid$(S$,1,3))) : Add Insa%,1
            Case Equ$(IF ,Upper$(Mid$(S$,1,3))) : Printfree
            Case Equ$(IFNOT ,Upper$(Mid$(S$,1,6))) : Add Insa%,1
            Case Equ$(IFNOT ,Upper$(Mid$(S$,1,6))) : Printfree
            Case Equ$(WHILENOT ,Upper$(Mid$(S$,1,9))) : Printfree
            Case Equ$(WHILELOOP ,Upper$(Mid$(S$,1,10))) : Printfree
            Case Equ$(REPEAT,Upper$(Mid$(S$,1,6))) : Printfree
            Case Equ$(WHILE ,Upper$(Mid$(S$,1,6))) : Printfree
            Case Equ$(ENDIF,Upper$(S$)) : Printfree
            Case Equ$(ENDPROC,Upper$(S$)) : Printfree
            Case Equ$(WEND,Upper$(S$)) : Printfree
            Case Equ$(UNTIL,Upper$(Mid$(S$,1,5))) : Printfree
            Case Equ$(ENDWHILE,Upper$(S$)) : Printfree
            Case Lt(Insa%,0) : Printm Insafailure in line:,Lnp%

        Endif

    Wend

    Close #1
    Close #2
    Locate 2,1
    Print Zeilen:,Lnp%
    Print maximale Tiefe:,Maxinsa%+1,in Zeile,Maxln%
    Sleep 2000
    Shell notepad _out_.txt

Endif

End
 
16.07.2007  
 



 
- Page 1 -


Irgendwann hatte ich das wohl auch mal als "Online-Service" -

die Nity formatiert ohnehin alle Fonte und da potuto das ja auch als separates Feature abrufbar sein. ^^
 
01.11.2011  
 




Christof
Neuß
Hallo Andreas,

klasse!!! DANKE!

Sieht schon sehr gut aus. Bestimmt kannst Du mir noch erklären, warum manchmal das ENDPROC nicht erkannt wird? Z.B. hier:
PROC KriterienBearbeiten'---------------------------------------------------------------------------> Dialoganfang

    DECLARE Dialogende%
    DECLARE FALISTVIEW1&
    DECLARE Button1&
    DECLARE Button2&
    DECLARE Ueber$[]
    VAR AenderungsSpalten$="011111"
    VAR FALISTVIEWDLL&=USEDLL("LISTVIEW.DLL")
    VAR DLG&=CREATE("DIALOG",%HWND,"Selektionskriterien erfassen/bearbeiten",180,200,800,270)
    VAR UeberTrans1$=Space$(35)
    VAR UeberTrans2$=Space$(35)
    SetODBCSpalten "TZZZZZ"
    Ueber$[0]="Kundengruppe"
    Ueber$[1]="Anlagevolumen"
    Ueber$[2]="Aktivvolumen"
    Ueber$[3]="Gehalt"
    Ueber$[4]="Klasse/Segment VON"
    Ueber$[5]="Klasse/Segment BIS"
    USEFONT "MS Sans Serif",13,0,0,0,0
    SETDIALOGFONT 1
    FALISTVIEW1& = CREATELISTVIEW(DLG&,%HINSTANCE,0,$FFFFFF,-1,$31)
    LVSQL("Select * from T_Bank_Kriterien",FALISTVIEW1&)
    EnableEdits(FALISTVIEW1&,7)
    SelectColumnEdits(FALISTVIEW1&,addr(AenderungsSpalten$))

    WhileLoop 0,5

        GetColumnName(FALISTVIEW1&,addr(UeberTrans1$),&LOOP)
        UeberTrans2$=Ueber$[&LOOP]
        SetColumnName(FALISTVIEW1&,addr(UeberTrans2$),&LOOP)
        Ueber$[&LOOP]=Trim$(UeberTrans1$)

        if &LOOP>0

            SetColumnAlignment(FALISTVIEW1&,&LOOP,1)

        endif

    EndWhile

    SHOWLISTVIEW(FALISTVIEW1&,0020,0010,0740,0150)
    BUTTON1& =@CREATE("BUTTON",DLG&,"Speichern",0600,0180,0070,0030)
    BUTTON2& =@CREATE("BUTTON",DLG&,"Abbruch"  ,0700,0180,0070,0030)
    InitMessages(DLG&)
    SETFOCUS(DLG&)
    DIALOGENDE%=0

    WHILENOT DIALOGENDE%

        WAITINPUT

        If %KEY=2

            DIALOGENDE%= 1

        ELSEIF CLICKED(BUTTON1&)'BUTTON Speichern

            WhileLoop 0,5

                GetColumnName(FALISTVIEW1&,addr(UeberTrans1$),&LOOP)
                UeberTrans2$=Ueber$[&LOOP]
                SetColumnName(FALISTVIEW1&,addr(UeberTrans2$),&LOOP)
                Ueber$[&LOOP]=Trim$(UeberTrans1$)

            EndWhile

            LV2ODBC("",0,"T_Bank_Kriterien",1,0,FALISTVIEW1&)
            DIALOGENDE%=1

        ElseIF CLICKED(BUTTON2&)'BUTTON Abbruch

            DIALOGENDE%=1

        ENDIF

    ENDWHILE

    DESTROYWINDOW(DLG&)
    CloseMessages(DLG&)
    FREEDLL FALISTVIEWDLL&

EndProc

PROC FilialenBearbeiten

    DECLARE Dialogende%
 
Win10 16 GB RAM
01.11.2011  
 




Christof
Neuß
Haha.... jetzt bin ich drauf reingefallen.
@iF: Tja, den Formatierer hier hätte ich naturalmente auch nutzen können. Funzt wohl. Ist nur EVTL. hier und da etwas umständlich.

Im angegenen Code wird bei "EndProc" nicht wieder ausgerückt
 
Win10 16 GB RAM
01.11.2011  
 




Christof
Neuß
Hallo Andreas,

ich hab's gefunden.
Es liegt an der Zeile:

SelectColumnEdits(FALISTVIEW1&,addr(AenderungsSpalten$))

"Select" wird als Beginn einer Struktur interpretiert, obwohl es nicht als Wort alleine steht. Was kann ich denn da machen?

DANKE!
 
Win10 16 GB RAM
01.11.2011  
 




Andreas
Miethe


Hallo Christof,

die Frage ist eher was ich da machen kann
 
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
01.11.2011  
 




Andreas
Miethe


Ok, erledigt !

Download direkt circa den Editor : Menü Helfer -> Editor aktualisieren .
 
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
01.11.2011  
 




Christof
Neuß
Hi Andreas,

das wäre ja SUPER,
aber die gedownloadete ZIP-File enthält nochmal die selbe ZIP-File und auch den alten Editor.

Vielleicht nur noch mal richtig packen?

Würdest mir eine grande Freude machen
 
Win10 16 GB RAM
01.11.2011  
 




Andreas
Miethe


UPS sorry.

Neue Version ist hochgeladen.
 
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
01.11.2011  
 



 
- Page 2 -


@Christof: Jupp, umständlich -

drum meine ich ja als "extra" Dienst -

potuto ich vlt. hier beim Quelltext-Merker (  [...]  ) als Feature reinprogrammieren.
 
01.11.2011  
 




Christof
Neuß
@Andreas: DANKE! Funktioniert einwandfrei
 
Win10 16 GB RAM
01.11.2011  
 




Christof
Neuß
@iF: Ja, das wäre sicher 'ne gute Stelle, um so was einzubinden. Wie viel Quelltext kann man denn hier einstellen? Ist das irgendwie begrenzt?
 
Win10 16 GB RAM
01.11.2011  
 



Unbegrenzt -

jedenfalls gibt es hier keine Grenzen wie "Du darfst nur so und so viel hochladen und File dürfen nur so und so grande sein" etc. -

Du kannst auf XProfan.Com also so viel hochladen und posten wie Du möchtest bzw. so viel wie die Browser-(Programme) und Webserver verkraften. ^^

Technischen Grenzen gibts naturalmente immer -

da hilft aber z.B. einfach ausprobieren.
 
01.11.2011  
 




Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

7.830 Views

Untitledvor 0 min.
Gast.081520.11.2024
Member 862464112.05.2024
Walter09.11.2022
p.specht14.05.2022
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie