Vinnaren i pepparkakshustävlingen!
2022-08-19, 20:19
  #1
Medlem
Bonnatorps avatar
Har gått lite längre i mitt hemmapul, och nu måste jag ha en lösning för att distribuera datan till slutkund på ett snyggt sätt.
Dessa jobbar med telemarketing, och använder uteslutande excel. Har hört att de har något interface som kan koppla mot deras excelfiler och snygga till det för ändamålet också, men har inte riktigt kommit dit än, så huvudsaken är att jag får till det här hanterbart.

Konceptet jag sitter lite på är att ha en lista, en vanlig längd torde vara runt 15.000 rader. Denna lagras förstås i SQL, då direktlagring i excel blev lite otympligt, särskilt med nästa steg i åtanke.
Varje rad torde ha kanske 5-8 kolumner i primärtabellen , men sedan vill jag att varje rad har två eller flera länkade tabeller också, som i sin tur innehåller annan data. Ekonomidata och grejer, som jag inte kan pula in på bara en rad, vilket jag gjorde i mitt första utkast så det blev över 30 rader, fy vad otympligt det var.
Med den extra datan jag tänkte lägga till nu torde det bli någonstans mellan 50 och 150 celler med data per rad i primärtabellen, men fördelat över flera länkade tabeller.

I stora drag har jag typ en idé av hur det hela ska utföras och lagras internt för min del, när jag väl lärt mig mer hur SQL fungerar (vilket jag inte kommit fram till än), men här nedan är viktigaste frågan i det hela:

Som jag förstått är det inga problem med SQL i sig, men hur kan jag presentera detta snyggast när det väl ska konverteras till Excel?
Slänga in de länkade filerna i samma dokument, fast i separata flikar? Det blir nog otympligt det också när det blir hundratals flikar i samma dokument.
Är det annars en del av grundinterfacet när man länkar excel till SQL?
Skulle vara väldigt praktiskt om jag bara kunde köra databasen på min egen dator och låta slutanvändarna ha direkttillgång till den utan att jag behöver uppfinna eller lära mig ett helt nytt gränssnitt för det.

Funderar om tre arbetsblad skulle räcka, och så länkar jag till korresponderande områden i de två andra bladen från länkar i blad 1.
Fungerar antagligen, men jag har en känsla av att det kanske inte är tillräckligt elegant för användarna.
__________________
Senast redigerad av Bonnatorp 2022-08-19 kl. 20:54.
Citera
2022-08-19, 23:27
  #2
Medlem
Necriss avatar
Är dina tabeller korrekt normaliserade med nycklar och sånt? Förstår inte riktigt vad du menar med länkade tabeller, men kanske är det du syfftar på? Varför skulle det bli fler tabbar i excel än antaley tabeller?

Troligtvis vill du ju inte visa rå-datan utan istället har man någon dashboard, antingen i excel eller i PowerBI, och sen har du specifika tabeller som byggs av powerqueries som visar datan i olila joins och filter så att man ser något mer användbart än vad man kan se i SQL-databasen.
Citera
2022-08-19, 23:45
  #3
Medlem
Enterprises avatar
Frågan du bör ställa dig är hur kunderna vill ha datan presenterad för sig för sitt "usecase"!
Vad är ändamålet med att de får datan i en Excel-fil? Vad ska de göra med datan sen?
Citera
2022-08-20, 00:49
  #4
Medlem
Bonnatorps avatar
Citat:
Ursprungligen postat av Necris
Är dina tabeller korrekt normaliserade med nycklar och sånt? Förstår inte riktigt vad du menar med länkade tabeller, men kanske är det du syfftar på? Varför skulle det bli fler tabbar i excel än antaley tabeller?

Troligtvis vill du ju inte visa rå-datan utan istället har man någon dashboard, antingen i excel eller i PowerBI, och sen har du specifika tabeller som byggs av powerqueries som visar datan i olila joins och filter så att man ser något mer användbart än vad man kan se i SQL-databasen.
Nu blev det lite många ord som jag inte lärt mig än.
Kan hända jag svängde mig lite mycket med något jag inte har riktigt koll på heller, men såvitt jag förstått kan man i excel (och rimligen SQL, antar/hoppas jag) knyta en tabell till en enskild cell i en annan tabell.
Det var bara det jag menade.

Och jo, det är rådatan jag tänkte visa, fast så snyggt organiserad som möjligt.
I ekonomitabellen tillexempel, rad 1 låses och visar omsättning 2022, 2021, 2020, osv, tillsammans med vinst och andra relevanta grejer.
Det blir antagligen ett första utkast (igen) som är större än det senaste, och har de några önskemål om hur det ska se ut få jag organisera om i vilken ordning tabellerna renderas.
Citat:
Ursprungligen postat av Enterprise
Frågan du bör ställa dig är hur kunderna vill ha datan presenterad för sig för sitt "usecase"!
Vad är ändamålet med att de får datan i en Excel-fil? Vad ska de göra med datan sen?
Nuvarande tabeller de använder är så enkla de kan bli.
Tar de första listorna jag arbetade med när jag började lära mig webscraping som exempel:
Första kolumnen innehåller ett bilregistreringsnummer, nästa innehåller namn på ägaren (företag eller privatperson), nästa innehåller adress, nästa innehåller eventuellt telefonnummer som de köpt av någon tjänst för en evighet sedan och som ofta saknas eller är gammal (vilket jag främst pysslade med att samla ihop i början) och en massa andra detaljer som oftast inte användes, men som var med ändå.
Och så någon ruta för anteckningar förstås, och så färgmarkerar man vardera rad efter utfallet på kundkontakten.

Och så kunde det se ut i några hundra till några tusen rader.

Min plan var att behålla samma grundupplägg, men utöka det, så i t.ex. namnet på ägarföretaget blir klickbart, och så öppnas ytterligare ett excelark som innehåller mer data om det företaget, men som behöver en egen tabell för att presenteras på ett vettigt sätt.
Det var det jag menade med länkade tabeller.

Jag funderade på om det skulle vara enklast att ha extradatan i två andra arbetsblad som fylls med rutor, som blir mindre arbetsblad som innehåller varje företags uppgifter.
Men jag insåg att det dels skulle bli gigantiska excelfiler, vilket inte är så schysst om man har en enklare dator. Eller ens på min spelrigg med 64GB RAM för den delen. Bara ekonomilistan för Jönköping var jätteklumpig att hantera i en enda fil.
Dessutom skulle det vara ett rätt så klumpigt system, då det blir omständigare att sortera de där minitabellerna sedan ändå.

Så det får bli så här istället, vilket jag hört av en excelkunnig ska fungera:
Jag gör precis det jag beskrev ovan, fast istället så gör jag två stycken excelfiler till för varje företag. Ett innehåller befattningshavare och deras personuppgifter, ett innehåller ekonomi. Och hittar jag något mer framöver så blir det det också.
Och så lägger jag dessa tusentals filer i en mapp intill primärdokumentet, och den som inte håller reda på den mappen i rätt relativ position från primärdokumentet får skylla sig själv och be om en ny kopia att lägga på rätt ställe.
Klicka på namnet i primärdokumentet, och så dyker extradatan för det företaget upp till höger i fönstret.
Klicka på ett annat företag, så byts den högra vyn ut till det nya företaget.

Just det här upplägget gör att jag bara behöver göra väldigt små förändringar i nuvarande pythonkod.
Men databasupplägget kommer så snart det finns tid och det mest akuta är ordnat, så de som ska ha det har något att traggla igenom.

Och jo, jag vet att det redan finns tjänster som tillhandahåller ganska exakt det här, men kan jag tjäna någon krona medans jag lär mig nya saker är ju det kul. Jag har ändå fördelen att jag inte har några drift- eller personalomkostnader (till andra) att tänka på vid prissättning.
Sedan kan det hända att det blir användbart i annat syfte någon gång framöver, så det kan vara ett bra projekt att ha liggandes när det är färdigt.
Skulle jag vara arbetsgivare skulle jag iallafall tänka "Jaha, du har sparat hela sveriges företagsinfo på din dator i excelform. Coolt".

Men det skulle antagligen underlätta i längden om jag kunde göra allt det här med SQL, ha filerna på min dator eller en hyrd server, och sedan låta de som faktiskt använder listorna hämta listorna från SQL-databasen.
Frågan är om det går göra samtidigt som man relativt smidigt kan behålla upplägget med filsystemet som jag tänkte vore smidigast för dem, eller om det bara är ett aber att imporera tusentals filer till en specifik mapp, plus en fil till parentmappen.

Lite bonusfråga som inte direkt har med ämnet att göra, men appropå tjänster som redan gör typ detta:
Visst är det CRM det kallas?
Tillhandahåller de egentligen just någon mer relevant data för detta än det som finns gratis på de vanliga sajterna, Bolagsfakta, Ratsit och Hitta?
Interface plus lullull är förstås roligt om man har tid att lära sig det, men telefonförsäljare som jobbar helt mot provision har kanske inte lust att sätta in sig i något nytt som inte ger just någon större fördel.
Tänker just på dataomfattningen de tillhandahåller, ifall någon har koll.
__________________
Senast redigerad av Bonnatorp 2022-08-20 kl. 01:38.
Citera
2022-08-20, 14:37
  #5
Medlem
Enterprises avatar
Citat:
Ursprungligen postat av Bonnatorp
Lite bonusfråga som inte direkt har med ämnet att göra, men appropå tjänster som redan gör typ detta:
Visst är det CRM det kallas?
Tillhandahåller de egentligen just någon mer relevant data för detta än det som finns gratis på de vanliga sajterna, Bolagsfakta, Ratsit och Hitta?
Interface plus lullull är förstås roligt om man har tid att lära sig det, men telefonförsäljare som jobbar helt mot provision har kanske inte lust att sätta in sig i något nytt som inte ger just någon större fördel.
Tänker just på dataomfattningen de tillhandahåller, ifall någon har koll.
Jag förstår inte hur de någonsin skulle kunna erbjuda mer (förifylld) data än vad som framgår av offentligt tillgänglig information. Däremot vet jag CRM som erbjuder betydligt mindre, i princip inget - alltså att man själv får skriva in allt.
Citera
2022-09-14, 12:10
  #6
Medlem
Först skulle jag säga att du behöver antingen lära dig databaser eller ta hjälp av någon som kan databaser. Jag lever på just sånt här så du kan ju skicka ett privat meddelande om du vill.

För det andra så skrapar du data från webben, de här alla gratistjänsterna? Det är inte så enkelt att göra så då detta datat har restriktioner, och deras användaravtal till dig i gratistjänsten med står säkerhet förhindrar att du maskinläser och manipulerar datat.

Och för det tredje så kommer vi in på juridik och GDPR.

Sedan tillbaka till spännande saker.
Du behöver ha en riktigt genomarbetat datamodell, 3NF, och du ska inte köra en databas i din egna maskin? Baserar du det här på MS SQL Server Express kan du ha en databas upp till 10GB stor, max 1GB minne och 1 kärna. Skulle det bli segt på din spelrigg är det inte hårdvara du saknar, det är vettig datamodell. Misstänker att du sitter på Developer Edition, eller har du köpt Standard Edition eller Enterprise Edition? Developer Edition får du inte använda på det sätt du beskriver, dvs det är ett licensbrott, men nu gissar jag ju bara på hur du gör.

Hade jag varit dig hade jag kört på med en Azure SQL Database, som du kan skala upp allteftersom du får kunder och behov. Du öppnar också upp direkt åtkomst till databasen, fast med konton som endast har läsbehörigheter som sedan föder Excelfilerna vid refresh. Ett konto per kund. Ännu hellre så sätter du en webservice ovanpå databasen som kunderna ansluter emot och autentiserar siog emot, som sedan levererar de dataset som du vill föda excel med. Fördelen med denna molndatabas är att då är kunderna beroende på din svaga anslutning mot nätet och din spelmaskin du behöver starta om titt som tätt. Det är fördel i det lilla, fördelen i det stora är att du spar pengar på att bara köpa den kraft du behöver.

Slutligen, med risk för att låta mästrande och så. Det du beskriver är ingen star science när vi pratar om det tekniska, affärsmodellen däremot kan vara spännande. Du är som sagt välkommen att ta kontakt privat.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback