03. marts 2011 - 20:50Der er
2 kommentarer og 1 løsning
SQL sætning til tjek af periode
Jeg har nu brugt flere timer på følgende problem - har behov for input eller forslag fra andre.
Har en tabel [AfregningType] med følgende felter: [Id] - siger sig selv [Medlemsid] - hvilket medlem der afregnes [Afregningsid] - hvilken afregningstype der skal benyttes [Fra] - første dato for periode. (Typen datetime) [Til] - sidste dato for perioden. (Typen datetime)
Et medlem må kun have en afregningstype pr. dag/periode. Når man opretter en ny skal jeg have tjekket om der findes en periode i forvejen. Her ville jeg gerne have en SQL sætning, så jeg kan vise evt. overlap til brugeren.
Nogen der har et forslag - det burde være simpelt, men jeg har mistet overblikket efter mange forsøg.
Du skal lave en skript der undersøger om brugren og afregnings typen findes.
Hvis sandt, komme med en besked, eller handling.
Hvis falsk, forsætte oprettelsen af brugren i tabellen.
Lidt afhængig af hvordan du vil bygge det, vil jeg foretrække vba, makro kan nok også gøre det.
Jeg bruger meget denne model datavalidering
Dim dbs As Database, rst As Recordset Dim strSQL As String
Set dbs = CurrentDb()
strSQL = SQLskript
Set rst = dbs.OpenRecordset(strSQL) Do While Not rst.EOF If rst.BOF And rst.EOF Then Hvis forespørelsen er tom, forsæt med oprettetse proceduren Else hvis der oprettet noget på brugren, giv besked End If rst.MoveNext Loop rst.Close dbs.Close
Tak for dit forslag. Koden (C#) har jeg ordnet, men mit problem er selve SQL-sætningen. Skulle nok have været mere specifik, men tænkte det var nok i gruppen "Databaser -> MS SQL".
Altså fx "SELECT * FROM [AfregningType] WHERE ....". Jeg har haft flere forskellige udformninger i spil, men ingen har virket korrekt.
Det må være noget med "WHERE [Medlemsid] = @Medlemsid AND [TIL] <noget> AND [FRA] <NOGET>"
Jeg lukker spørgsmålet - problemet findes stadig. Min løsning bliver at lade brugeren tjekke perioderne. Det er ikke optimalt, men den bedste løsning pt.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.