20. august 2004 - 18:33Der er
14 kommentarer og 5 løsninger
C5 v3.0 går ned ved SHIFT-F4 på OrdKart
Jeg har et problem med en brugerprofil, der åbenbart får C5 v.30 til at gå ned, når der bliver filtreret på OrdKart/OrdKartArkiv.
Problemet opstår kun ved den ene bruger, og jeg har forsøgt at slette brugerprofilen (.tbl).
Men det ser umiddelbart ud til at shift-f4 profilen bliver gemt et andet sted. Jeg kan i øvrigt ikke finde nogen dokumentation på 'MODE=FRMFILT QUERY=OrdKart' som er den der bliver aktiveret ved shift-f4.
Hvordan kan jeg finde ud af hvad fejlen er? Det er sandsynligvis et felt i 'shift-f4' billedet, der får C5 til at gå ned, derfor er det pænt vigtigt jeg finder ud af hvilket felt der provokere fejlen.
Alternativt ønsker jeg en måde at nulstille 'shift-f4' for samtlige brugere på f.eks. OrdKart.
Hvordan jeg finder fejlen, og hvordan man styrer 'shift-f4' til at vise f.eks. kun udvalgte felter der er fastlagt i koden. Og til sidst, hvor 'profilen' af shift-f4 er gemt henne.
En sletning af brugerrettelserne med Ctrl+F9 i formeditoren som supervisor i consolversionen løser 80-90% af alle problemer med crash i forms. Dette sletter også andre brugeres rettelser, men hvor der handles, der spildes. :-) De bliver vist gemt i c5util.usr, sammen med de andre rettelser.
Det er heller aldrig lykkes mig at finde noget dokumentation på MODE=FRMFILT. Det er en runtime-genereret QTX. Du kan desværre ikke angive hvilke felter, der skal kunne vælges. Du kan overstyre Shift+F4 i Event-triggeren (&Event == #EventQTFilter), men det virker ikke i Windows-versionen.
Jeg har løst det engang ved at overstyre Shift+F4 til at kalde en rigtig QTX, som afleverede RecId's i et temporært kartotek. Dette gennemløb jeg så i Lookup-triggeren for at finde posterne. Det giver muligheden for at spærre for felter, men F4 funktionaliteten virker så ikke længere.
Sorry... Ctrl+F9 inde fra editoren sletter ikke QTX'ens filtre. Der skal du åbne formen og Shift+F4 som supervisor og derinde trykke Ctrl+F9. Så kan du vælge "Alle brugere"
Vedr. F4, hvordan den virker, eller i mit tilfælde, hvorfor den ikke virker.
Sørger jeg i C5 v3.0 i OrdKart finder den aldrig noget (når man f.eks. sørger på nummer), den forbliver på den post man sidst var på. Via CTRL-F4 kan jeg finde ordren uden problemer. Bruger jeg console-version er der ingen problemer med F4, den finder ordren med det samme.
Jeg ved ikke om det har relevans, men jeg har lige opdaget at der er massive mængder negative RecIDs 'across the board'. Et eksempel er '-2046636624' og lignende, det er min mave ikke glad for at høre om.
Lukker Ctrl+F4 ikke vinduet? Det plejer det at gøre.
Det er ligemeget med negative RecId's. Det er ikke en fejl. Det er bare fordi databasen er blevet større end 2 GB. RecId angiver den fysiske position i datafilen på native og det er en 32 bit signed integer. Når databasen når 2 GB, går der overløb i tallet. Der er først problemer ved 4 GB når RecId når 0 igen. Version 1.60 af C5 har lidt problemer med dem, men det er rettet i de senere versioner.
Hmmm. C5 v3.0 er blevet tilrettet før data blev løftet over i den, således den har de samme koder og felter som i C5 v1.80 (altså, dem jeg har lavet). Dvs. jeg har manuelt flyttet tilretningerne over og ikke bare importeret dem.
Jeg fandt selv fejlen, eller kilden til de fejl der er ved F4. Det viser sig at være en dårlig ide at slæbe *.tbl filerne fra 1.80 over i 3.00, da de åbenbart ikke er kompatible med 3.00'eren.
Jeg var lidt for hurtigt med at lukke dette spørgsmålet. Problemet er stadigvæk ikke løst, og det er blevet mere mærkeligt nu.
Bruger jeg supervisor kontoen, med F4 på OrdKart, får jeg kun 4 felter frem. Nummer og 3 'hjemmelavet' ENUM felter.
Stort set alle andre profiler jeg har oprettet har alle de felter der er indeks på. F.eks. er transaktion med i F4 på hele 3 gange.
Sletter jeg usr0001.tbl har det ingen effekt, og usr0000.tbl kan jeg ikke slette (hvad indeholder den i øvrigt?). Jeg har prøvet at trække usr0000.tbl der er i en hel ren C5 v3.00 over i drift C5'eren, men det gør ingen forskel.
Endnu mere interessant - det lader til at fejlen kun forekommer når man vælger at 'paste' f.eks. dokumentnummer. Vælger jeg manuelt at indtaste nummeret, trykker 'ok', kommer der endnu en boks frem der indeholder Nummer, Transaktion. OK til den boks, og den finder den korrekte ordre.
Vælger jeg 'blot' at indæstte nummeret, så kommer der ikke en boks bagefter - den går direkte tilbage til formen, og forbliver på den ordre man var på før søgningen.
Men det er ikke nok, for det lader til at Ctrl-V har en 'anden' funktion en Alt-I. For vælger jeg at bruge Alt-I, til at indsætte, kommer der endnu en boks frem (nummer, transaktion) og derefter 'ok', og den finder den ordren!?!?
Under 'Basale redigeringsfunktioner' er der to indsæt (?), i min brugerprofil har jeg valgt nummer to indsæt til at være Ctrl-V, og den første er Alt-I. Det gør ingen forskel at bytte rundt på de to, så Ctrl-V er den første, og Alt-I nummer to i rækken. Ej heller ingen forskel at vælge begge til Ctrl-V. Vælger jeg f.eks. Shift-F12 til indsæt, så virker det (den finder ordren mv.). Men selvom, der absolut ingen henvisninger er til Ctrl-V, virker denne kombination stadigvæk!? Men den virker stadigvæk ikke til søgning (den kan fint indsætte).
Ingen af de to taster kan fjernes, og vælger jeg 'standard taster' forbliver Ctrl-V nummer to af de to indsæt, og den virker stadigvæk ikke i F4 søgningen.
Ligeså virker musen's indsæt heller ikke, samme problem som Ctrl-V, sålænge de bliver brugt til søgning. Den indsætter fint det man har valgt at kopiere, der sker bare 'noget andet' end ved Alt-I efterfølgende.
Uanset hvordan jeg vender og drejer det, så er det kun alle mulige andre kombinationer end Ctrl-V der har den ønskede virkning i F4 boksen (ja ok, jeg har ikke testet /alle/ kombinationer, det føles sådan..).
Eksperimentet at blevet afprøvet på supervisor samt andre brugere, og der er samme problem.
Jeg forstår ikke en dyt, det er nok det mest absurde jeg nogensinde har prøvet i C5. Måske kan jeg få andre til at afprøve dette mystiske problem?
De felter, du kan søge på i F4, er de indekser som starter med de samme felter som der låses på i formen. Derfor kommer Transaktion 3 gange. Det lyder til at der låses på noget, hvis der er Supervisor den logger ind.
Der er snart ikke mere tilbage i usrxxxxx.tbl filerne. Der er ikke nogen inkombatibilitets-problemer fra version til version i .tbl filerne, men nogle brugertilretninger (Ctrl+(Alt+)F6) ligger heri. Og hvis elementet er blevet meget tilrettet fra den gamle til den nye version (som f.eks. FRM.OrdKart) kan det give problemer. Jeg plejer at bruge en hjemmelavet kørsel, som sletter alle brugerrettelser i alle elementer, når jeg opgraderer.
Det eneste jeg kan komme på usr00000.tbl indeholder er farveopsætningen til console-vesionen.
XAL/C5 kernen stammer helt tilbage fra slutningen af firserne. Dengang var der ikke en standard for Ctrl+C, Ctrl+V og Ctrl+X. Derfor bruges Shift+C5 og Alt+I. Ctrl+C og Ctrl+V er noget der er bygget på senere... Det er højst sandsynligt derfor du har problemer med dem. Det korte af det lange er at du/vi ikke kan rette det da problemet ligger i kernen.
Grunden til at Ctrl+V stadig kan bruges er at den er nærmest indbygget i Windows, men nogen gange opdager C5 ikke at der er pastet i feltet.
Nå men det virkede i v1.80 uden problemer, så de har foretaget en ændring i C5 v3.0 vedr. indsætning via Ctrl-V. I øvrigt er det ikke nogen gange, det er hver eneste gang man bruger Ctrl-V, i F4, den ikke virker.
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.