פרסום נתונים ללקוחות

vm40946

New member
פרסום נתונים ללקוחות

שלום רב,

יש לי עסק קטן ואני רוצה לפרסם ללקוחות שלי נתונים (data) אל תוך קובץ אקסל (ייעודי מתוכנת) שאני מביא להם.

את המידע של הלקוחות שלי שאני רוצה לפרסם, אני מחזיק אצלי על קובץ אקסל (אני יכול גם להעביר אותו לאקסס אם זה משנה משהו).

הקובץ שלי מרכז את כל נתוני הלקוחות בצורה מאוד מאוד מסודרת אבל כמובן המטרה לי היא שכל לקוח שיקבל מידע, יקבל רק את המידע שלו.
יש לציין שאני יודע תכנות vba ברמה מאוד גבוהה, כלומר אם אומרים לי לעשות את מה שכתבתי על דסקטופ, אני עושה את זה בקלות, אבל כל מה שנוגע לשרתים web וכו׳ זה יפנית מבחינתי.

שאלתי היא כזו:
מה הן האפשרויות שלי לבצע את האמור למעלה כאשר מטרתי היא שאני מתפעל קובץ (אקסל או אקסס) אחד אצלי, ובצד של הלקוחות שלי הם לוחצים ״רענן/יבא מידע״ ומקבלים את מה שאני עדכנתי אצלי בקובץ.

מספר הערות חשובות:
1. אין לי בעיה להשקיע באיזה ״שרתונצ׳יק״ כמה אלפי שקלים, אם זה מה שצריך בשביל זה.
2. המידע חייב להיות מאובטח, שלא כל אחד יכול להכנס (לשרת/ענן או כל הצעה אחרת) ולמשוך את הנתונים האלה מאחר ומדובר על מידע רגיש שלהם.
3. כמות המידע היא לא גדולה שמצריכה sql או דומה, כמה עשרות שורות שמתעדכנות כל יום ואפילו לא מצטברות.
4. המידע המתקבל חייב להיות על אקסל מאחר והלקוח עושה על זה מניפולציה של חישוב.

זהו זה, חושב שעברתי על הכול.

תודה רבה מראש.
 

IT goldman

New member
אין בעיה תאורטית לעשות על שרת מה שאתה עושה על דסקטופ

שהרי שניהם מחשבים.
יש שתי אפשרויות.
1. להריץ על שרת של מיקרוסופט ואז להשתמש ברכיב שמאפשר לקרוא/לכתוב קבצי אקסל, ושם משתמשים ב VBA. עשיתי כבר משהו כזה לפני 15 שנים. אתה יכול אפילו להריץ מקרו בקובץ בשיטה הזאת.
2. מן הסתם, יש איזה DB DRIVER שמאפשר לקרוא/לכתוב נתונים קבצי EXCEL גם בשרת PHP. לשם הפשטות, נגיד שמדובר בקריאת/כתיבת קבצי CSV - וזה כל שפת תיכנות שבשרת יכולה לעשות.
אפשר לחפש בגוגל רכיב שכזה.

בכל אופן, זה הצד האחורי של האתר שאתה מעוניין לעשות... בצד הקידמי יהיו לך משתמשים עם סיסמא, ולכל אחד שכזה תוכל להפיק קובץ משלו בעזרת הלוגיקה של סעיפים 1 או 2.
 

vm40946

New member
ראשית תודה רבה

אופציה מספר 1 נשמעת לי טוב, אך כאשר אמרתי שאינטרנט/שרתים זה יפנית מבחינתי זה עד כדי כך שעד לפני כמה שבועות לא ידעתי ששרת זה גם מחשב בסופו של דבר, תמיד חשבתי שזה איזה מכשיר אחר (אולי בגלל תמונות של חוות שרתים, שבחדרים שם זה לא נראה ממש מחשב אלא "קירות" של מכשירים), בכל אופן, כאשר אני אומר שאני יודע לעשות את זה על דסקטופ זה אומר שאם יש לי את זה על שרת מקומי אני נגש לשם עם כתובת התיקיה שמחוברת דרך הרשת אל המחשב המקומי, אך אם השרת נמצא אצלי אין לי מושג איזה קוד אני כותב באקסל של הלקוח שלי בכדי להגיע לשרת שלי.
אשמח מאוד אם תפנה אותי למאמר כזה, או תראה לי קוד שלך או כל דבר אחר שיכול לקדם אותי איך שהוא בכדי להגיע לפתרון.

שאלה נוספת, כאשר אתה כותב "שרת מיקרוסופט" הכוונה למערכת ההפעלה שרצה על השרת (מצטער על השאלות פשוט אני לא מכיר את המונחים)?

שוב תודה
 

IT goldman

New member
הקובץ של הבסיס נתונים צריך (רצוי) להיות על השרת

לאחר עיון מחודש,
קודם כל תעבור לאקסס זה יהיה יותר קל לקרוא ממנו נתונים. אפילו בשרת PHP וזהו השרת המומלץ.
עכשיו הקובץ ACCESS הוא במחשב שלך, ועליו אתה עובד. זה יישאר ככה.
אבל אתה צריך להעלות אותו לשרת. כל כמה שעות נאמר. אפשר גם לכתוב משהו אוטומטי. בצורה הפשוטה אתה מעתיק אותו לשרת בעצמך בעזרת תוכנת FTP כלשהי.

על השרת עצמו, תיהיה תוכנית ב- PHP שיוצרת על המקום לכל משתמש מזוהה שמבקש זאת, קובץ EXCEL, או יותר קל קובץ CSV, המכיל את הנתונים הרלוונטיים לאותו המשתמש.

עלות אחסון בשרת: עשרות שקלים בחודש.
עלות כתיבת תוכנית כזאת בשרת, כמה מאות שקלים.
ומעלה.

איתי
itgoldman.com
 

vm40946

New member
תודה איתי אבל

אני חושב שאולי לא הבהרתי מספיק ברור.

לקוח שלי יהיה מצוייד בקובץ שאני בונה עבורו, מלא בנוסחאות ותכנות VBA שעושה עבורו סטטיסטיקות מסוימות. את הבסיס למידע הוא מקבל מהשרת כאשר אצלו הוא לוחץ "רענן/יבא".
במילים אחרות:
הלקוח שלי לוחץ בקובץ שלו "רענן", הקוד שכתוב אצלו בקובץ נכנס לשרת, מזין סיסמה או כל דבר אחר שצריך בשביל לקבל הרשאה, נכנס לקובץ (אקסל/אקסס שבשרת) ומפה אני כבר מנווט אותו למידע שלו בקובץ וזה הולך אליו לקובץ שלו.

הרעיון הוא, שהוא לא נכנס לאף מקום, לא מזין סיסמה ולא כלום, פשוט לוחץ ומקבל.

תודה רבה על העזרה.
 

IT goldman

New member
זה יותר מדי מיקרוסופט בשבילי...

אני מניח שאם בונים אתר/שרת שכזה שמנפק מידע בהתאם לשילוב של שם משתמש וסיסמא, אז אפשר דרך האקסל/אקסס לייבוא נתונים ע"י "גלישה" כביכול לעמוד:
zzz https://server.com/?user=moshe&password=***** zzz
אפשר לקרוא לזה WEB SERVICE
&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
 
יש לא מעט ספריות שמאפשרות בנייה של קובץ אקסל

ויש דרייברים שמאפשרים התמנשקות בצד השרת גם לאקסס. (לא מומלץ, יש בסיסי נתונים שכיחים יותר, דוגמת mysql).
&nbsp
נראה שהפתרון יהיה ליצור כלי כלשהו שבונה קובץ אקסל עבור לקוח לאחר כניסה (שם משתמש+ססמא), ניתן לבנות את המערכת בPHP (אולי אפילו כתוסף ש"מתלבש" על CMS שכיח כלשהו, מה שיאפשר לך להפחית עלויות תחזוקה בהמשך), או בשפות אחרות (טכנולוגית asp.net לדוגמה), כך שההתמנשקות לאקסל\אקסס תהיה קלה יותר, אבל ההוצאה על השרת תהיה גבוהה יותר (שרת חלונות יקר יותר).
&nbsp
מקווה שעזרתי
 

vm40946

New member
תודה עוץליגוץלי

אך אני לא רוצה להתפזר לשפות תכנות שאני לא מכיר, תחזוקה של שרתים אצל אנשי תוכנה וכו', כל עוד יש לי את הידע ב VBA נשאר לי רק (אני חושב ותקן אותי אם אני טועה) ללמוד את נושא החיבור בין "אקסל בשרת" לבין "אקסל לקוח" שיכול להיות בכל מקום בעולם, מאחר וברגע שהם מחוברים בינהם, אני יודע למשוך ולעשות כל מה שאני רוצה.
 
למעלה