J'ai mis en rouge le nom des champs à modifier pour adapter à la structure de ta table.
Tu dois avoir un champ où est stocké le sens de prospection, qui permette lorsque l'on fasse un tri sur ce champ, d'avoir le premier enregistrement correspondant à la première parcelle ;
Un champ surface où la surface est stockée en flottant en hectares ;
Un champ jour (en entier de préférence) vide où sera renseigné l'information du jour de prospection.
Tout ça a compiler en mbx sous le programme Mapbasic :
Code:
DECLARE Sub main
Sub main
Dim surf As Float
Dim i, jour As Integer
Dim fichier, cmd As String
surf = 0
jour = 1
fichier = FileOpenDlg("","","TAB","Table parcelles")
Open Table fichier As parcelles Interactive
cmd = "Select * From parcelles Order By champ_sens_prospection into parcelles_triees noselect"
Fetch first From parcelles_triees
Do While Not Eot(parcelles_triees)
surf = surf + parcelles_triees.champ_surface_ha
i = parcelles_triees.RowID
Print Chr$(12)
Print "Jour " + jour
If surf > 8,5 Then
jour = jour + 1
surf = parcelles_triees.champ_surface_ha
End If
Update parcelles_triees Set champ_jour = jour Where RowID = i
Fetch Next From parcelles_triees
Loop
Commit Table parcelles Interactive
Close Table parcelles_triees Interactive
Note "Mise à jour terminée"
End Sub
Liens sociaux