Novità

AIUTO X SCRIPT -

Stato
Chiusa ad ulteriori risposte.
R

Roby

Guest
x gli artisti degli script

Vorrei un aiuto per modificare lo script, seguente di Luigi in modo che invece di discrivere le righe in ordine crescente di data le scriva in ordine decrescente ed nell'aggiornamento le inserisca allo stesso modo?
-------------------------------------------------

Sub Main

Dim sDirDestinazione
Dim idEstr
Dim CG ' capogioco
Dim R ' ruota

Dim Apertura,Chiusura,Max,Min,DataEst
Dim sRecord
Dim sFile
Dim sRuota

Dim EstrPartenza
Dim EstrazioniTot
Dim PrimaEstrazioneDellaStatistica


sDirDestinazione = ScegliDirectory

EstrazioniTot = EstrazioniArchivio
PrimaEstrazioneDellaStatistica = 1514 ' 1514 è l'estrazione del 06/01/1900 la statistica parte dalla prima estrazione del 1900 ;6878 ' 03.01.2000'
' modificare questo valore se si vuole far partire la statistica da una posizione diversa

' lo script legge i file output se essi sono presenti
' ed esegue la statistica a partire dall'ultima estrazione non presente fino all'ultima disponibile in archivio
' in pratica devi solo lanciare lo script,dopo la prima volta che gira le altre volte
' l'esecuzione sara velocissima perche calcolera solo i valori relativi alle ultime estrazioni

If sDirDestinazione <> "" Then
If CreaDirectoryRuote(sDirDestinazione) Then
For R = 1 To 10
sRuota = NomeRuota(R)
For CG = 1 To 90

EstrPartenza = PrimaEstrazioneDellaStatistica
'sFile = sDirDestinazione & sRuota & "" & sRuota & Format2(CG) & ".txt" 'modifica

sFile = sDirDestinazione & sRuota & "" & Format2(CG) & ".txt" 'modifica
Call PreimpostaValori(Apertura,Chiusura,Min,Max,sFile,EstrPartenza)
If EstrPartenza > 0 Then
For idEstr = EstrPartenza + 1 To EstrazioniTot

Call Messaggio(sRuota & " " & idEstr & " Capogioco " & Format2(CG))

Apertura = Chiusura
Chiusura = GetSommaRitardi(idEstr,R,CG)
Max = GetValoreMax(Chiusura,Apertura)
Min = GetValoreMin(Chiusura,Apertura)
' DataEst = Anno(idEstr) & "/" & Mese(idEstr) & "/" & giorno(idEstr) formattazione anno/mese/giorno
DataEst = giorno(idEstr) & "/" & Mese(idEstr) & "/" & Anno(idEstr) 'formattazione 'giorno/ mese/ anno

sRecord = DataEst & "," & Apertura & "," & Max & "," & Min & "," & Chiusura
Call ScriviFile(sFile,sRecord)


If ScriptInterrotto Then Exit For

Next
End If
If ScriptInterrotto Then Exit For

Call AvanzamentoElab(1,90,CG)
Next ' For CG = 1 To 90...
If ScriptInterrotto Then Exit For

Next

End If
End If ' If sDirDestinazione <> "" Then...
Call Scrivi("Nella directory ")
Call Scrivi(sDirDestinazione)
Call Scrivi("sono stati creati gli output in formato testo")


MsgBox "Fine"

End Sub
Function GetSommaRitardi(Estrazione,Ruota,CapoGioco)

Dim idEstr
Dim k
Dim R

For k = 1 To 90
If k <> CapoGioco Then
R = R + AmboRitardo(Ruota,CapoGioco,k,1,Estrazione)
End If
DoEventsEx
Next

GetSommaRitardi = R


End Function
Function GetValoreMax(Chiusura,Apertura)
' - a - valore Massimo è uguale alla Chiusura quando la Chiusura è maggiore dell'apertura
' - b - valore Massimo è uguale all'apertura quando la chiusura è minore della apertura
If Chiusura >= Apertura Then
GetValoreMax = Chiusura
Else
GetValoreMax = Apertura
End If
End Function
Function GetValoreMin(Chiusura,Apertura)
' valore Minimo è uguale alla Chiusura quando la Chiusura è minore dell'apertura
' valore Minimo è uguale all'apertura quando la chiusura è maggiore dell'apertura

If Chiusura <= Apertura Then
GetValoreMin = Chiusura
Else
GetValoreMin = Apertura
End If
End Function
Sub PreimpostaValori(Apertura,Chiusura,Min,Max,sFile,EstrPartenza)


ReDim aRighe(0)
Dim sData

If LeggiRigheFileDiTesto(sFile,aRighe) Then
' leggo l'ultima riga del file

ReDim aV(0)
Call SplitByChar(aRighe(UBound(aRighe)),",",aV) ' sc
 
L

LuigiB

Guest
quello che ti serve è una semplicissima funzione che prenda in input il file creato dallo script e generi un nuovo file con le righe al contrario.
In questo scenario il file prodotto dallo script rimarrebbe invariato e continuerebbe ad aggiornarsi mentre il file che serve a te verrebeb riprodoto ogni volta.
Ecco la funzione , va lanciata alla fine dello script in modo che leggendo il file input riscriva i dati sul file di output.


Codice:
Sub ScriviFileInvertiOrdineRighe (sFileInput , sFileOutput )
	
	Dim k 
	

	Call EliminaFile (sFileOutput)
	
	ReDim aV(0)
	Call LeggiRigheFileDiTesto (sFileInput , aV)
	
	For k = UBound (aV) To 0 step -1
		Call ScriviFile (sFileOutput,aV(k) , False)
		
	Next
	
End Sub
 

elephantbig

Advanced Member >PLATINUM<
Ciao Claudio :)
Mi dispiace non poterti aiutare.Con gli script sono una FRANA anzi come si diceva una volta zero tagliato.:D
Figurati se potessi dare una mano a fare il terno secco se non lo farei piu che volentieri.Non fosse altro per mantenere la promessa dei cannoli a Luigi.
Ricordati che con la calcolatrice mi è venuto l'esaurimento nervoso e sono andato in BLACK OUT.
Ancora sto maledetto BLACK:(:(
Auguri per stasera.Forza 29 NA.
San Gennaro pensaci tu.:D
 

claudio8

Premium Member
x Luigi, sto cercando di inserire quanto mi hai inviato, ma aimè non ci sono ancora riuscito, [:p][:p][:p]
continuo su questa strada perchè il primo tentativo con questa tipo di ricerca fatta è andata alla grande, mi dava da giocare come ambate a BA-CA 12 48 56, peccato che il 12 e il 48 sono usite separatamente e non si sono accoppiate.:D:D:D

Saluti e speriamo bene per il futuro
Ps: scusa ELE ma non ti avevo ancora letto, ti mando i miei saluti, comunque grazie per il supporto morale.
claudio
 

claudio8

Premium Member
X Luigi

[:p] Praticamente sono negato [:p] non riesco cavare un ragno dal buco.

Fai tu se puoi, dopo proverò a sistemare quello dei terni a 2 capogiochi

Ciao

claudio
 

claudio8

Premium Member
quote:Originally posted by LuigiB

dove ti sei fermato ? cos'è che non hai capito ?
[:p][:p]Mi sono spostato in "auto castigo" al fondo della classe per rivedere le tue lezioni sugli script, ma non ho ancora capito cosa devo fare.
Se mi modifichi lo script dò inizio al processo del terno di Natale,:D molto atteso da ELE :D, altrimenti, se devo essere sincero, manco per la prossima Pasqua mi tiro fuori da questa pozzanghera.[:p][:p]

claudio
 
L

LuigiB

Guest
ecco ad esempio lo script che lavora con gli ambi a capogioco
opportunamente modificato per generare anche un secondo file con ordine inverso

Codice:
Sub Main
	Dim sDirDestinazione
	Dim idEstr
	Dim CG ' capogioco
	Dim R ' ruota
	Dim Apertura,Chiusura,Max,Min,DataEst
	Dim sRecord
	Dim sFile
	Dim sRuota
	Dim EstrPartenza
	Dim EstrazioniTot
	Dim PrimaEstrazioneDellaStatistica
	sDirDestinazione = ScegliDirectory
	EstrazioniTot = EstrazioniArchivio
	PrimaEstrazioneDellaStatistica = 1514 ' estrazione del 06/01/1900 la statistica parte dalla prima estrazione del 1900
	' modificare questo valore se si vuole far partire la statistica da una posizione diversa
	' lo script legge i file output se essi sono presenti
	' ed esegue la statistica a partire dall'ultima estrazione non presente fino all'ultima disponibile in archivio
	' in pratica devi solo lanciare lo script,dopo la prima volta che gira le altre volte
	' l'esecuzione sara velocissima perche calcolera solo i valori relativi alle ultime estrazioni
	If sDirDestinazione <> "" Then
		If CreaDirectoryRuote(sDirDestinazione) Then
			For R = 1 To 10
				sRuota = NomeRuota(R)
				For CG = 1 To 90
					EstrPartenza = PrimaEstrazioneDellaStatistica
					sFile = sDirDestinazione & sRuota & "\" & Format2(CG) & ".txt"
					Call PreimpostaValori(Apertura,Chiusura,Min,Max,sFile,EstrPartenza)
					If EstrPartenza > 0 Then
						For idEstr = EstrPartenza + 1 To EstrazioniTot
							Call Messaggio(sRuota & " " & idEstr & " Capogioco " & Format2(CG))
							Apertura = Chiusura
							Chiusura = GetSommaRitardi(idEstr,R,CG)
							Max = GetValoreMax(Chiusura,Apertura)
							Min = GetValoreMin(Chiusura,Apertura)
							DataEst = Anno(idEstr) & "/" & Mese(idEstr) & "/" & giorno(idEstr)
							sRecord = DataEst & "," & Apertura & "," & Max & "," & Min & "," & Chiusura
							Call ScriviFile(sFile,sRecord)
							If ScriptInterrotto Then Exit For
						Next
					End If
					
					Call ScriviFileInvertiOrdineRighe ( sFile , sFile & ".invertito.txt")
					If ScriptInterrotto Then Exit For
					Call AvanzamentoElab(1,90,CG)
					
				Next ' For CG = 1 To 90...
				If ScriptInterrotto Then Exit For
				
				
			Next
		End If
	End If ' If sDirDestinazione <> "" Then...
	Call Scrivi("Nella directory ")
	Call Scrivi(sDirDestinazione)
	Call Scrivi("sono stati creati gli output in formato testo")
	MsgBox "Fine"
End Sub
Function GetSommaRitardi(Estrazione,Ruota,CapoGioco)
	Dim idEstr
	Dim k
	Dim R
	For k = 1 To 90
		If k <> CapoGioco Then
			R = R + AmboRitardo(Ruota,CapoGioco,k,1,Estrazione)
		End If
		DoEventsEx
	Next
	GetSommaRitardi = R
End Function
Function GetValoreMax(Chiusura,Apertura)
	' - a - valore Massimo è uguale alla Chiusura quando la Chiusura è maggiore dell'apertura
	' - b - valore Massimo è uguale all'apertura quando la chiusura è minore della apertura
	If Chiusura >= Apertura Then
		GetValoreMax = Chiusura
	Else
		GetValoreMax = Apertura
	End If
End Function
Function GetValoreMin(Chiusura,Apertura)
	' valore Minimo è uguale alla Chiusura quando la Chiusura è minore dell'apertura
	' valore Minimo è uguale all'apertura quando la chiusura è maggiore dell'apertura
	If Chiusura <= Apertura Then
		GetValoreMin = Chiusura
	Else
		GetValoreMin = Apertura
	End If
End Function
Sub PreimpostaValori(Apertura,Chiusura,Min,Max,sFile,EstrPartenza)
	ReDim aRighe(0)
	Dim sData
	If LeggiRigheFileDiTesto(sFile,aRighe) Then
		' leggo l'ultima riga del file
		ReDim aV(0)
		Call SplitByChar(aRighe(UBound(aRighe)),",",aV) ' scompongo la riga ottenendo i valori separati dalle virgole in un array
		Apertura = aV(1)
		Chiusura = aV(4)
		Max = aV(2)
		Min = aV(3)
		sData = aV(0)
		ReDim aV(0)
		Call SplitByChar(sData,"/",aV) ' scompongo la data
		EstrPartenza = DataEstrToIdEstr(aV(2),aV(1),aV(0))
	Else
		Apertura = 89
		Chiusura = 89
		Max = 89
		Min = 89
	End If
End Sub
Function CreaDirectoryRuote(sRoot)
	Dim R
	Dim sDir
	Dim n
	For R = 1 To 10
		sDir = sRoot & NomeRu
 

claudio8

Premium Member
GRAZIE LUIGI

:D:D:D "ECCEZZIUNAL VERAMENT" :D:D:D

LO METTO SUBITO A "LAVURARE..."

DOMANI E' PRONTA LAMBATA SECCA "PU U LOTT"

:D:D:D "ECCEZZIUNAL VERAMENT VERAMENT" :D:D:D

Scperiam che non c' sta u Script - BUG

claudio
 

cobra_pliskeen

Junior Member
Buongiorno a tutti.
Sto usando la versione 1.1.62 e credo ci sia un bug nella sezione AGENDA GIOCATE.
Quando s'inserisce una nota questa compare nella colonna COLPI GIOCATIinvece della colonna NOTE.

__________________________
Mai discutere con un'idiota, ti porta al suo livello e vince per l'esperienza.
 

claudio8

Premium Member
quote:Originally posted by cobra_pliskeen

Buongiorno a tutti.
Sto usando la versione 1.1.62 e credo ci sia un bug nella sezione AGENDA GIOCATE.
Quando s'inserisce una nota questa compare nella colonna COLPI GIOCATIinvece della colonna NOTE.

__________________________
Mai discutere con un'idiota, ti porta al suo livello e vince per l'esperienza.

Sposta la riciesta in SPAZIOMETRIA, è più facile che Luigi la legga.
Non pensare che ti voglia cacciare, ti voglio solo suggerire una soluzione più veloce.

claudio
 

cobra_pliskeen

Junior Member
okappa ... sposto. :)
E perchè dovrei pensare che vuoi cacciarmi? :)

__________________________
Mai discutere con un'idiota, ti porta al suo livello e vince per l'esperienza.
 

claudio8

Premium Member
quote:Originally posted by cobra_pliskeen

okappa ... sposto. :)
E perchè dovrei pensare che vuoi cacciarmi? :)

__________________________
Mai discutere con un'idiota, ti porta al suo livello e vince per l'esperienza.

:D[8D]Sai in giro c'è gente permalosa [8D]:D

claudio
 
Stato
Chiusa ad ulteriori risposte.

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 07 maggio 2024
    Bari
    68
    80
    23
    56
    71
    Cagliari
    43
    74
    20
    02
    11
    Firenze
    75
    19
    18
    74
    69
    Genova
    45
    38
    26
    16
    87
    Milano
    06
    23
    72
    66
    05
    Napoli
    46
    21
    49
    80
    73
    Palermo
    15
    09
    54
    48
    49
    Roma
    06
    58
    78
    27
    31
    Torino
    78
    27
    31
    64
    74
    Venezia
    60
    47
    90
    06
    22
    Nazionale
    43
    58
    26
    18
    79
    Estrazione Simbolotto
    Milano
    17
    16
    25
    23
    43

Ultimi Messaggi

Alto