Αναρτήσεις

Εμφάνιση αναρτήσεων με την ετικέτα Tips and tricks

Χρήση variables για την περιγραφή των qvd path names - QlikView...

Ένα κοινό "πρόβλημα" στο QlikView development είναι όταν θέλεις να δοκιμάσεις την εφαρμογή σου σε κάποιο άλλο περιβάλλον, test ή live... Λόγω της φύσης του QlikView το να αλλάξεις απλά το connection string στη βάση που διαβάζεις δεν είναι αρκετό διότι θα πρέπει να ορίσεις ξανά το path για όλα τα qvds που φορτώνονται στην εφαρμογή, ένα ένα... Κάτι τέτοιο είναι χρονοβόρο και μη αποδοτικό και αυξάνει τις πιθανότητες λάθους... Η χρήση της επιλογής των Relative Paths δεν λύνει το πρόβλημα διότι προϋποθέτει ότι η εφαρμογή και τα qvds βρίσκονται στο ίδιο folder ή έστω διαφέρουν κατά ένα level κάτι το οποίο προσωπικά θεωρώ αρχιτεκτονικό λάθος...  Μια πολύ καλή λύση για να αντιμετωπιστεί μια τέτοια κατάσταση είναι η χρήση local variables για την αποθήκευση των path names των διαφόρων qvds... Αυτό γίνεται δηλώνοντας μια μεταβλητή  vPathName αμέσως μετά τα αρχικά set statements στο Main tab του script editor η οποία περιέχει το full path προς το qvd repository το οποίο θέλουμε να

QlikView variable ως παράμετρος σε SQL query...

Το σημερινό tip είναι κάτι που έφτιαξα πριν περίπου 2 χρόνια, στην αρχή της ενασχόλησής μου με το QlikView, και προέκυψε από την ανάγκη να διαβάσω μια λίστα πελατών από ένα data source και μετά να περάσω αυτή την λίστα σαν παράμετρο σε ένα άλλο data source, μια βάση δεδομένων, για να συλλέξω όλη την πληροφορία που αφορούσε τους πελάτες αυτούς... Μετά από 2 χρόνια εντατικής δουλειάς και εμπειρίας ξέρω ότι υπάρχουν κι άλλοι τρόποι, να κάνεις την ίδια δουλειά, η συγκεκριμένη υλοποίηση όμως είναι ενδιαφέρουσα ως προς την χρήση των variables μέσα στο QlikView script σε συνδυασμό με SQL queries... Έστω λοιπόν ότι το πρώτο data source είναι ένα Excel αρχείο στο οποίο περιέχονται κωδικοί πελατών τους οποίους θέλουμε να διαβάσουμε και να αναζητήσουμε σε ένα άλλο data source, μια βάση δεδομένων... Για να το καταφέρουμε αυτό θα δημιουργήσουμε μια μεταβλητή η οποία θα περιέχει σαν ένα μεγάλο string, όλους τους κωδικούς πελατών (χωρισμένους με κόμματα και κλεισμένους μέσα σε "αυτάκια&quo

Πώς να καθαρίσουμε το workspace με ένα μόνο command - R...

Θα υπάρξουν φορές δουλεύοντας με την R που θα βρεθείτε με ένα workspace γεμάτο variables τις οποίες δεν χρειάζεστε αλλά θέλετε να συνεχίσετε τη δουλειά σας με ένα άδειο workspace...  Υπάρχουν δυο τρόποι να το κάνετε αυτό... Ο πρώτος είναι να κλείσετε το session που δουλεύετε χωρίς να σώσετε τα περιεχόμενα του workspace στο .RData file... Ο τρόπος αυτός όμως έχει τα μειονεκτήματα ότι πρέπει να ξαναφορτώσετε από την αρχή όλα τα packages τα οποία είναι απαραίτητα για την ανάλυσή σας και ότι πρέπει να ξαναδηλώσετε το working directory... Ο δεύτερος τρόπος είναι πιο απλός και σύντομος και περιλαμβάνει μόνο το παρακάτω command: Το command αυτό διαγράφει μόνο τα variables που περιέχει το workspace αφήνοντας το απολύτως κενό χωρίς όμως να επηρεάζει τα loaded packages ή άλλα preferences που σχετίζονται με το current session θέλει όμως προσοχή στην χρήση του καθώς όπως είπαμε διαγράφει πλήρως το workspace...

Υπολογισμός ελληνικών εργάσιμων ημερών με SQL...

Πολλές φορές δουλεύοντας με δεδομένα θα χρειαστεί να τροποποιήσετε τον κώδικά σας, τον όποιο κώδικα γράφετε, αναλόγως με το αν τα δεδομένα σας αναφέρονται σε εργάσιμες ημέρες ή όχι... Αυτό μπορεί να είναι συχνά μπελάς αν συνυπολογίσεις ότι υπάρχουν κινητές γιορτές και αργίες, όπως το Πάσχα, οι οποίες διαφέρουν κιόλας αναλόγως αν αναφέρεσαι στο Πάσχα των Καθολικών ή των Ορθοδόξων... Ένας εύκολος τρόπος να υπολογιστούν οι εργάσιμες μέρες του ελληνικού εορτολογίου είναι το παρακάτω T-SQL script το οποίο αφού τρέξετε σε κάποιο SQL Server instance, παράγει για το διάστημα το οποίο έχετε ορίσει, ένα table το οποίο περιέχει ανά ημερομηνία, τον μήνα και το έτος που ανήκει αυτή, την ονομασία της ημέρας, ένδειξη αν είναι εργάσιμη ή όχι και ένδειξη αν είναι η τελευταία εργάσιμη κάθε μήνα ή όχι.... Το script αυτό μπορείτε να το χρησιμοποιείτε είτε σε stored procedures ή common table expressions για πιο ad hoc χρήση, είτε one off υπολογίζοντας τις εργάσιμες μέρες για ένα μεγάλο χρονικό διάστη

Data manipulation χρησιμοποιώντας SQL statements στην R - sqldf...

Το να μάθεις μια καινούργια γλώσσα προγραμματισμού ή ένα καινούργιο framework, σημαίνει κάποιες φορές ότι πρέπει να μάθεις να σκέφτεσαι με διαφορετικό τρόπο από αυτόν που έχεις συνηθίσει να σκέφτεσαι μέχρι τώρα... H απόφαση μου να μάθω R και να μπω στον κόσμο του statistical programming σήμαινε ότι έπρεπε να βγω από το comfort zone που βρισκόμουν τόσα χρόνια και να μάθω καινούργια κόλπα... Για εμένα και πολλούς άλλους που προερχόμαστε από ένα κόσμο γεμάτο databases και data warehouses το να γράψουμε ένα SQL script ή κάποια prodecure για να διαχειριστούμε τα δεδομένα μας είναι πολύ απλό, όταν όμως προσπαθείς να κάνεις κάτι τέτοιο μέσα από την R, τότε πρέπει να σκεφτείς και να πράξεις με διαφορετικό τρόπο... Υπάρχουν όμως στιγμές που θες να κάνεις κάτι γρήγορα και δεν έχεις χρόνο για να εκπαιδεύσεις τον εαυτό σου να σκέφτεται με R τρόπο και ίσως δεν θέλεις κιόλας να το κάνεις διότι θεωρείς ότι ο R τρόπος δεν είναι ούτε γρήγορος, ούτε αποδοτικός... Ευτυχώς υπάρχει το sqldf  που μας λύ