Quelltexte/ Codesnippets | | | | - Seite 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 Dateien (*.*)|*.*)
If Len(Infle$)
Assign #1,Infle$
Reset #1
Assign #2,_out_.txt
Rewrite #2
Locate 1,1
Print Datei:,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
|
| | | | |
| | | | | - Seite 1 - |
| | Irgendwann hatte ich das wohl auch mal als "Online-Service" -
die Nity formatiert ohnehin alle Quelltexte und da könnte das ja auch als separates Feature abrufbar sein. ^^ |
| | | | |
| | 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%
|
| | | | |
| | Christof Neuß | Haha.... jetzt bin ich drauf reingefallen. @iF: Tja, den Formatierer hier hätte ich natürlich 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 |
| | | | |
| | 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! |
| | | | |
| | 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 über 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-Datei enthält nochmal die selbe ZIP-Datei und auch den alten Editor.
Vielleicht nur noch mal richtig packen?
Würdest mir eine große Freude machen |
| | | | |
| | 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 ▲ |
| |
| | | | - Seite 2 - |
| | | @Christof: Jupp, umständlich -
drum meine ich ja als "extra" Dienst -
könnte ich vlt. hier beim Quelltext-Merker ( [...] ) als Feature reinprogrammieren. |
| | | | |
| | Christof Neuß | @Andreas: DANKE! Funktioniert einwandfrei |
| | | | |
| | 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? |
| | | | |
| | | Unbegrenzt -
jedenfalls gibt es hier keine Grenzen wie "Du darfst nur so und so viel hochladen und Dateien dürfen nur so und so groß 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 natürlich immer -
da hilft aber z.B. einfach ausprobieren. |
| | | | |
|
Zum QuelltextThemenoptionen | 7.651 Betrachtungen |
ThemeninformationenDieses Thema hat 4 Teilnehmer: |