Paradox Community

Items in pnews.paradox-programming

Subject:Re: Help with my code please example below
Date:Wed, 13 Oct 2021 18:28:45 +1000
From:Bernie van't Hof <onrequest@somewhere>
Newsgroups:pnews.paradox-programming
Probably the first thing you are doing wrong is asking everyone to go 
through that much code to figure out what is wrong. Can't you break your 
problem down to something simpler?

- Bernie

On 13/10/21 4:03 pm, Tony wrote:
> Can someone help me with the code below please. I want to put a start date
> in and move the code date forward to capture the next set of data. Example
>   So start 01/07/2019 until 15/07/2019. Do the analysis add to the stats2
> table then move on 16/07/2019 until 31/07/2019 do the same add results to
> stas2 table. I want this to carry on until the end of my data which is 12/10/2021.
> Not sure what im doing wrong .
> 
> 
> 
> proc StartDate(d date) date
> ; proc returns start date for given date
> ; if date is before 16th, start date is begining of month
> 	if day(d) < 16 then
> 		return( date(month(d),1,year(d)) )
>      else
> 		return( date(month(d),16,year(d)) )
>      endIf
> endProc
> 
> proc EndDate(d date) date
> ; proc returns end date for given date
> ; if date is before 16th, end date is 15,
> ; if date if 16th or later, end date is end of month
> 	if day(d) < 16 then
> 		return( date(month(d),15,year(d)) )
>      else
> 		return( date(month(d),daysInMonth(d),year(d)) )
>      endIf
> endProc
> 
> 
> method run(var eventInfo Event)
> var qb query
> 	 TC TCursor
> 	 dStart, dEnd Date
> 	 mStart, mEnd Date
> 	 sDate String
> 	 mDate String
> 		 tab table
>   
> 
> 	 endVar
> 
> 
> 	dStart = date(7,01,2018)
> 	mStart = date(7,16,2018)
>     ; and now start looping
>     while dStart < today()
> 		dStart = StartDate(dStart)
> 		dEnd   = EndDate(dStart)
> 		mStart = StartDate(mStart)
> 		mEnd   = EndDate(mStart)
> 		; create a condition for date      ex: ">=1.1.2018 , <=15.1.2018"
>        sDate = ">=01/07/2018,<="+string(dEnd)
>        ; and now do something with this string
>        ; put here your querys and do smething with them
> 
> 			mDate = ">="+string(mStart) + ", <="+string(mEnd)
> 
> 
> 
>     qb= Query
> ANSWER: :PRIV:ANSWER.DB
> 
> OPTIONS: NO AUXILIARY TABLES
> Stats1.DB | Race name |
> Delete    | not blank |
> 
> EndQuery
> 
> 		qb.executeQBE()
> 	  qb= Query
> ANSWER: :WORK:Stats1.DB
> 
> Stats1.DB | Race name | Racetime | Race No | Date   | Grade  | Distance |
> 
>            | Check     | Check    | Check   | Check  | Check  | Check    |
> 
> 
> Stats1.DB | Race type | TfGoing | Going  | Pos    | Btn    | Trap   | Name
>    |
>            | Check     | Check   | Check  | Check  | Check  | Check  | Check
>   |
> 
> Stats1.DB | Age    | Sex    | Bend.1 | Bend.2 | Bend.3 | Bend.4 | Comments
> |
>            | Check  | Check  | Check  | Check  | Check  | Check  | Check
>    |
> 
> Stats1.DB | ISP    | TFR    | Official time | Break time | Trainer | Betfair
> |
>            | Check  | Check  | Check         | Check      | Check   | Check
>    |
> 
> Stats1.DB | Race name_1 | Racetime_1 | Race No_1 | Date_1 | Grade_1 |
>            | Check       | Check      | Check     | Check  | Check   |
> 
> Stats1.DB | Distance_1 | Race type_1 | TfGoing_1 | Going_1 | Pos_1  | Btn_1
>   |
>            | Check      | Check       | Check     | Check   | Check  | Check
>   |
> 
> Stats1.DB | Trap_1 | Name_1 | Age_1  | Sex_1  | Bend.1_1 | Bend.2_1 |
>            | Check  | Check  | Check  | Check  | Check    | Check    |
> 
> Stats1.DB | Bend.3_1 | Bend.4_1 | Comments_1 | ISP_1  | TFR_1  |
>            | Check    | Check    | Check      | Check  | Check  |
> 
> Stats1.DB | Official time_1 | Break time_1 | Trainer_1 | Betfair_1 | RaceN
>   |
>            | Check           | Check        | Check     | Check     | Check
>   |
> 
> EndQuery
> 
> 		qb.executeQBE()
> 
>   qb=Query
> ANSWER: :WORK:Races.DB
> 
> DogsDB.DB | Race name             | Racetime | Race No | Date
>     | Grade  |
> 			 | Check _join3, Crayford | Check    | Check   | Check _a,~mDate   | Check
>   |
> 			 | Check _join3          | Check    | Check   | Check <_a          | Check
>   |
> 
> DogsDB.DB | Distance     | Race type | TfGoing | Going  | Pos    | Btn
>   |
>            | Check _join2 | Check     | Check   | Check  | Check  | Check
>   |
>            | Check _join2 | Check     | Check   | Check  | Check  | Check
>   |
> 
> DogsDB.DB | Trap   | Name         | Age    | Sex    | Bend.1 | Bend.2 |
>            | Check  | Check _join1 | Check  | Check  | Check  | Check  |
>            | Check  | Check _join1 | Check  | Check  | Check  | Check  |
> 
> DogsDB.DB | Bend.3 | Bend.4 | Comments | ISP    | TFR    | Official time
> |
> 			 | Check  | Check  | Check    | Check  | Check  | Check         |
> 			 | Check  | Check  | Check    | Check  | Check  | Check         |
> 
> DogsDB.DB | Break time                  | Trainer | Betfair |
>            | Check                       | Check   | Check   |
>            | Check _b,calc _b*0 as RaceN | Check   | Check   |
> 
> EndQuery
> 
> 	  qb.executeQBE()
>   play("RaceNo.ssl")
> 
>    qb=Query
> ANSWER: :WORK:ANSWER.DB
> 
> Races.DB | Race name | Racetime | Race No | Date   | Grade  | Distance |
> 
>           | Check     | Check    | Check   | Check  | Check  | Check    |
> 
> 
> Races.DB | Race type | TfGoing | Going  | Pos    | Btn    | Trap   | Name
>    |
>           | Check     | Check   | Check  | Check  | Check  | Check  | Check
>   |
> 
> Races.DB | Age    | Sex    | Bend.1 | Bend.2 | Bend.3 | Bend.4 | Comments
> |
>           | Check  | Check  | Check  | Check  | Check  | Check  | Check
>   |
> 
> Races.DB | ISP    | TFR    | Official time | Break time | Trainer | Betfair
> |
> 			| Check  | Check  | Check         | Check      | Check   | Check   |
> 
> Races.DB | Race name_1 | Racetime_1 | Race No_1 | Date_1 | Grade_1 |
>           | Check       | Check      | Check     | Check  | Check   |
> 
> Races.DB | Distance_1 | Race type_1 | TfGoing_1 | Going_1 | Pos_1  | Btn_1
>   |
>           | Check      | Check       | Check     | Check   | Check  | Check
>   |
> 
> Races.DB | Trap_1 | Name_1 | Age_1  | Sex_1  | Bend.1_1 | Bend.2_1 | Bend.3_1
> |
> 			| Check  | Check  | Check  | Check  | Check    | Check    | Check    |
> 
> 
> Races.DB | Bend.4_1 | Comments_1 | ISP_1  | TFR_1  | Official time_1 |
> 			| Check    | Check      | Check  | Check  | Check           |
> 
> Races.DB | Break time_1 | Trainer_1 | Betfair_1 | RaceN         |
> 			| Check        | Check     | Check     | Check >0,<=8 |
> 
> EndQuery
> 
> 	qb.executeQBE()
> 
> 
> 	tab.attach("answer")
> tab.add("Stats1",True,False)
>      
>   qb=Query
> ANSWER: :WORK:NNett.DB
> 
> Stats1.DB | Race name | Racetime | Race No | Date   | Grade     | Distance
>   |
> 			 | Check     | Check    | Check   | Check  | Check A.. | Check 380 |
> 
> Stats1.DB | Race type | Pos    | Trap   | Name   | Age    | Sex    | ISP
>     |
> 			 | Check     | Check  | Check  | Check  | Check  | Check  | Check  |
> 
> Stats1.DB | Betfair |
> 			 | Check   |
> 
> Stats1.DB | TFR_1
>                                                                          
>                              |
> 			 | _a,calc _a*0 as RT2,calc _a*0 as RT2P,calc _a*0 as RT2C,calc _a*0 as
> RT4,calc _a*0 as RT4P,calc _a*0 as RT4C,calc _a*0 as RT6,calc _a*0 as RT6P,calc
> _a*0 as RT6C |
> 
> Stats1.DB |
> 			 |
> 
> Stats1.DB | RaceN
>                                                   |
> 			 | calc _a*0 as BT6,calc _a*0 as RT6P,calc _a*0 as RT6Avg,calc _a*0 as
> Tracp P,calc _a*0 as BT,calc _a*0 as Nocr |
> 
> EndQuery
> 
> 
>    qb.executeQBE()
> 
> 
> 	
>   qb=Query
> ANSWER: :WORK:Adjtimes.DB
> 
> Stats1.DB | Race name | Racetime | Race No | Date   | Grade  | Distance |
> 
> 			 | Check     | Check    | Check   | Check  | Check  | Check    |
> 
> Stats1.DB | Race type | TfGoing | Going  | Pos    | Btn    | Trap   | Name
>    |
> 			 | Check     | Check   | Check  | Check  | Check  | Check  | Check  |
> 
> 
> Stats1.DB | Age    | Sex    | Bend.1 | Bend.2 | Bend.3 | Bend.4 | Comments
> |
> 			 | Check  | Check  | Check  | Check  | Check  | Check  | Check    |
> 
> Stats1.DB | ISP    | TFR    | Official time | Break time | Trainer | Betfair
> |
> 			 | Check  | Check  | Check         | Check      | Check   | Check   |
> 
> 
> Stats1.DB | Race name_1  | Racetime_1   | Race No_1    | Date_1       |
> 			 | Check _join1 | Check _join2 | Check _join7 | Check _join4 |
> 
> Stats1.DB | Grade_1      | Distance_1   | Race type_1 | TfGoing_1 | Going_1
> |
> 			 | Check _join6 | Check _join5 | Check       | Check     | Check   |
> 
> Stats1.DB | Pos_1  | Btn_1  | Trap_1 | Name_1 | Age_1  | Sex_1  | Bend.1_1
> |
> 			 | Check  | Check  | Check  | Check  | Check  | Check  | Check    |
> 
> Stats1.DB | Bend.2_1 | Bend.3_1 | Bend.4_1 | Comments_1 | ISP_1  | TFR_1
>   |
> 			 | Check    | Check    | Check    | Check      | Check  | Check  |
> 
> Stats1.DB | Official time_1 | Break time_1 | Trainer_1 | Betfair_1 | RaceN
>   |
> 			 | Check           | Check        | Check     | Check     | Check  |
> 
> goingAllow.DB | Race name | Racetime | Race No | Date   | Grade  | Distance
> |
> 				  | _join1    | _join2   | _join7  | _join4 | _join6 | _join5   |
> 
> goingAllow.DB | GA     |
> 				  | Check  |
> 
> EndQuery
> 
> 
>    qb.executeQBE()
> 
> 
> 
> 
>   qb= Query
> ANSWER: :WORK:Adjtimes.DB
> 
> 
> Adjtimes.DB | Race name | Racetime | Race No | Date   | Grade  | Distance
> |
> 				| Check     | Check    | Check   | Check  | Check  | Check    |
> 
> Adjtimes.DB | Race type | TfGoing | Going  | Pos    | Btn    | Trap   |
> 				| Check     | Check   | Check  | Check  | Check  | Check  |
> 
> Adjtimes.DB | Name   | Age    | Sex    | Bend.1 | Bend.2 | Bend.3 | Bend.4
> |
> 				| Check  | Check  | Check  | Check  | Check  | Check  | Check  |
> 
> Adjtimes.DB | Comments | ISP    | TFR    | Official time | Break time |
> 				| Check    | Check  | Check  | Check         | Check      |
> 
> Adjtimes.DB | Trainer | Betfair | Race name_1 | Racetime_1 | Race No_1 |
> 
> 				| Check   | Check   | Check       | Check      | Check     |
> 
> Adjtimes.DB | Date_1 | Grade_1 | Distance_1 | Race type_1 | TfGoing_1 |
> 				| Check  | Check   | Check      | Check       | Check     |
> 
> Adjtimes.DB | Going_1 | Pos_1  | Btn_1  | Trap_1 | Name_1 | Age_1  | Sex_1
>   |
> 				| Check   | Check  | Check  | Check  | Check  | Check  | Check  |
> 
> Adjtimes.DB | Bend.1_1 | Bend.2_1 | Bend.3_1 | Bend.4_1 | Comments_1 | ISP_1
>   |
> 				| Check    | Check    | Check    | Check    | Check      | Check  |
> 
> Adjtimes.DB | TFR_1  | Official time_1 | Break time_1 | Trainer_1 | Betfair_1
> |
> 				| Check  | Check _a        | Check        | Check     | Check     |
> 
> Adjtimes.DB | RaceN    | GA                         |
> 				| Check >0 | Check _b,calc _a-_b as GAA |
> 
> EndQuery
> 
> 
>    qb.executeQBE()
> 
>    qb=Query
> ANSWER: :PRIV:ANSWER.DB
> 
> OPTIONS: NO AUXILIARY TABLES
> Adjtimes.DB | Distance_1 | Official time_1 | GA | GAA            |
> 				|            | _c              | _b | changeto _c+_b |
> 
> EndQuery
> 
> 	qb.executeQBE()
> 
>    qb=Query
> ANSWER: :WORK:NNett.DB
> 
> DogsDB.DB | Race name     | Racetime | Race No | Date              | Grade
>   | Distance  |
> 			 | Check Crayford | Check    | Check   | Check ~sDate     | Check  | Check
> 380 |
> 
> DogsDB.DB | Race type | Pos    | Trap   | Name   | Age    | Sex    |
> 			 | Check     | Check  | Check  | Check  | Check  | Check  |
> 
> DogsDB.DB | TFR
>                                                                          
>                              |
> 			 | _a,calc _a*0 as RT2,calc _a*0 as RT2P,calc _a*0 as RT2C,calc _a*0 as
> RT4,calc _a*0 as RT4P,calc _a*0 as RT4C,calc _a*0 as RT6,calc _a*0 as RT6P,calc
> _a*0 as RT6C |
> 
> DogsDB.DB |
> 			 |
> 
> DogsDB.DB | Betfair
>                                                         |
> 			 | Check calc _a*0 as BT6,calc _a*0 as RT6P,calc _a*0 as RT6Avg,calc _a*0
> as Tracp P,calc _a*0 as BT,calc _a*0 as Nocr |
> 
> EndQuery
> 
>    qb.executeQBE()
> 
> 
> 
>   qb= Query
> ANSWER: :PRIV:ANSWER.DB
> 
> NNett.DB | Pos              |
> 			| not 1,changeto 0 |
> 
> EndQuery
> 
> 
>    qb.executeQBE()
> 
> 	
> 
>   play("Lto2T.ssl")
> 
>   play("Lto4.ssl")
> 
>    play("Lto6.ssl")
> 
> 	play("BT8.ssl")
> 	play("Fitness.ssl")
> 
>    qb=Query
> ANSWER: :PRIV:ANSWER.DB
> 
> OPTIONS: NO AUXILIARY TABLES
> NNett.DB | Race name | Racetime | Race No | Date   | Name   | Betfair
>   |
> 			| _join1    | _join2   | _join3  | _join4 | _join5 | changeto _a |
> 
> BetfairSp.DB | Race name | Racetime | Race No | Date   | Name   | Betfair
> |
> 				 | _join1    | _join2   | _join3  | _join4 | _join5 | _a      |
> 
> EndQuery
> 
>    qb.executeQBE()
> 
> 	 qb=Query
> ANSWER: :WORK:ANSWER.DB
> 
> NNett.DB | Race name | Racetime | Race No | Date   | Grade  | Distance |
> 
>           | Check     | Check    | Check   | Check  | Check  | Check    |
> 
> 
> NNett.DB | Race type | Pos    | Trap   | Name   | Age    | Sex    | Betfair
> |
>           | Check     | Check  | Check  | Check  | Check  | Check  | Check
>    |
> 
> NNett.DB | RT2    | RT2P   | RT2C   | RT4    | RT4P   | RT4C   | RT6    |
> 
>           | Check  | Check  | Check  | Check  | Check  | Check  | Check  |
> 
> 
> NNett.DB | RT6P   | RT6C   | BT6    | RT6P_1 | RT6Avg | Tracp P | BT
> |
>           | Check  | Check  | Check  | Check  | Check  | Check   | Check
> |
> 
> NNett.DB | Nocr   |
>           | Check  |
> 
> EndQuery
> 
> 	  qb.executeQBE()
>    	tab.attach("answer")
> tab.add("Stats2",True,False)
>   
> 
> 
> 			
> 
> 		; and at the end prepare data for next iteration
> 		dStart = dEnd+1
> 		mStart = mEnd+1
> 	
> 	endWhile
> 
> 


Copyright © 2004 thedbcommunity.com