28. april 2005 - 09:16Der er
20 kommentarer og 2 løsninger
Booking metoder
Hej med jer. "Nørder" Er ved at lave et booking system til ca 200 montører. Bruger lige nu Access som gemmested. Men det er alt for langsom nå man skal kontrollere om montør er optaget på et andet job.
Findes der en bedre måde at gemme hver booking på. Hvad med Outlook, hvordan styrer den det.
Og nej "Joern" ønsker ikke at købe dine programmer. Sorry..
Mener nemlig den indbyggede funktion er lidt langsom i forhold til at bruge sql.... Ellers kan du kører med en ini fil der er god struktur i, og faktisk lige så hurtig som en txt fil.....
Hej Terry (The man with the big brain) Jeg skal lave et system som kan holde styr på en masse montør. Nå jeg opretter en project skal der et antal personer på det. Disse personer må ikke være på andre projecter samtidig. og det skal være hurtigt at undersøge om de er optaget. Desuden skal det være sådan at hvis en montør ønsker ferie. skal hans periode på projectet korrigeres derefter. håber det fortæller lidt mere.
en ini fil er en setupfil, men kan også bruges på andre måder, den struktur ser sådan her ud:
[Options] OnTop=2 ToTray=2
[Sort] List1=4 List2=2 List3=2 List4=2
[Installation] Type=1
Der kan du selv bestemme hvordan dinne data skal se ud i, men tror access er den bedste løsning....
Det jeg mente hvordan du connecter til den er det med den indbyggede komponent eller laver du selv dine connections ?
eks. på at selv lave en connection: Set ws = Workspaces(0) Set db = ws.OpenDatabase(App.Path & "\CDDatabase.mdb") Set rs = db.OpenRecordset("SELECT * FROM movies")
Ser således ud En Tabel med Stamdata ( info om montør.) En Tabel med projecter ( start + slut dato på projecter ) En Tabel med projectJob ( Job der skal laves på projecter ) En tabel med Job ( de job der skal laves med start dato + slut dato
I understand what you need. Outlook could be used for doing this and at the same time would give a user friendly interface. What do you have at the moment?
If you already have something working in VB then it may be best to find out why it is slow rather than convert it all to Outlook.
jeg har allerede noget i vb. Ønsker ikke at bruge Outlook. ( grunden til jeg spurgte på outlook var kun om hvorledes den gemmer det.) Jeg har i vb en form der er bygget op med msflexgrid. hvor personer er i venstre kolonne 2 og nedefter, årstal i kolonne 0 Row(dage) , Ugenr i kolonne 1 Row(dage), Dag i kolonne 2 Row(dage) projecter er derefter lagt ud på respektive personer for perioden ( In Colour)
If you have dates/times (start+end) of each project then isnt it just a case of making one or more SQL queries to see if the new project overlaps existing?
Jeg har en sql der kører. Set DbJob = DB.OpenRecordset("SELECT Tbl_Personal_Job.* FROM Tbl_Personal_Job WHERE Tbl_Personal_Job.Init = '" & DbRs!Init & "' AND Tbl_Personal_Job.Start>=#" & Fromdate & "# And Tbl_Personal_Job.Start<=#" & ToDate & "# AND Tbl_Personal_Job.Slut>=#" & Fromdate & "# And Tbl_Personal_Job.Slut<=#" & ToDate & "# ORDER BY Tbl_Personal_Job.Start")
Men syndes det er en bøvlet måde at udlukke personer på Og hvad så hvis der er en der skal have ferie i projectets periode. Så er jeg nød til først at finde personens job i project og derefter dele det op. Det må da kunne gøres på en letter måde. Eller hvad. det job person skal lave i ferie perioden.
Not really sure what to suggest! Making your own time planning system such as this WILL require quite a bit of code specific to your needs and I dont really think there is an easy way other than purchasing something already made. A graphical representation would be more user friendly and also make it possible to visually see if a person is available for a specific period. Concerning holidays. Well normally if a person decides to take a holiday or absent for som eother reason, then this would require making changes to any project that person is already on for that period. This could also be done in code whih could split the period up but agin I dont think that there is any easy way of doing it!
Hej Jerry. tak for hjælpen. Vil oprette en tabel mere for jeg kan se at med de tabeller jeg har er det mange til mange relationer. Og det går ikke, så det laver jeg om til en til mange relation. Det vil nok hjælpe på mine problemmer. Send et svart begge to så vil jeg se om i kan dele dem
I would have thought that a many to many was necessary!
En Tabel med Stamdata ( info om montør.) En Tabel med projecter ( start + slut dato på projecter ) En Tabel med projectJob ( Job der skal laves på projecter ) En tabel med Job ( de job der skal laves med start dato + slut dato
Then another table with information on which montør is resposible for whcihh job, and as there could be more than one montør on each job and each montør could be involved with more than one job then you have a many to many (three tables for this relationship)
Hvis mange til mange relationer er nødvendige så bliver den langsom så vidt jeg ved....så hvis det kan struktureres anderledes så der bliver så få af dem som muligt så vil det hjælpe en del......
Hvad hvis du tog og lavede 2 db med montører og i den ene er der kun et id (primær nøgle) og montørnavn og en anden tabel med montør info og id (primær nøgle samme som i den anden)......
og en tabel til projekter start og slut dato, job og jobid (giv job et id som er unikt)
og en tabel til job start og slutdata og montør
tblMontoerList tblMontoerData tblProjekt tblJob
nu er jeg ikke så stærk advanceret sqlsætninger men så noget lignende det her:
Du skal indtaste en fra-til dato i dit program, og så skal du vel ha hentet en liste med alle der er ledige i den periode så der skal du så chekke dato i tblJob og så ha listet alle de MontoerID der ikke står der.....
Nå men kommer et svar her håber det kan bruges til noget :)
Syntes det er noget svært at gennemskue da det jo ikke kun handler om start-> slut dato......
eksempel: Du får et nye projekt hvor der kører fra 24-2 til 28-3 og der skal du finde alle dem som er ledige i den periode......men så er det jo ikke nok at chekke de 2 datoer og sige der imellem er de ikke ledige....en der laver noget fra 22-3 til 11-4 er jo i realiteten heller ikke ledig i perioden.......
Så alt i alt tror jeg jeg ville lave det anderledes...... Skal lige tænke en smulle mere og så kommer der et forslag......
Laver en tabel med en nøgle på initialer i montør stamdata. og en tabel med alle Job i med felter "AutoID","Init","job_Start","Job_Slut","Job_ID" Der er så nøgle på "Init" og "Job_ID" Og så en tabel med Info om job. Hvor Job_ID er nøgle For så får jeg en til mange + mange til en
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.