@dovid
שאלה בשביל להחכים
כי אני משער שיש סיבה מאחורי זה
היות ויש חשיבות רבה למניעת הקפצות של שרשורים ישנים
ואכמ"ל
מדוע לא לחסום את זה הרמטי ברמת הקוד/האתר?
@dovid
שאלה בשביל להחכים
כי אני משער שיש סיבה מאחורי זה
היות ויש חשיבות רבה למניעת הקפצות של שרשורים ישנים
ואכמ"ל
מדוע לא לחסום את זה הרמטי ברמת הקוד/האתר?
מדוע שבשיחה הראשונית כשהוא מבקש ממך את הפיתוח
לא תגשש מולו: 'מה התקציב שלכם לדבר הזה'?
אם זה חברה/ארגון מסודר שמבקש ממך לעשות תוכנה/אתר/ = תהליך שמייעל
וחוסך שעות עבודה רבות ואפילו במקרים רבים חוסך משרות ממש של אנשים
שווה להם להשקיע בזה כספית סכום אפילו גדול חד פעמי
כי הם מבינים את המשמעות הכספית שבדבר
אחרי ששמעת את הסכום שהם מבחינתם מוכנים להקצות לזה
תשקלל לעצמך מספר נקודות
האם הלקוח יודע מה הוא רוצה בצורה מפורטת (אפיון מוגדר)
כי לא יעזור לך לדעת עשרות שפות חלק, כאשר הלקוח לא יודע מה הוא רוצה שיופיע לו במסך הראשי
ידיעת השפה חוסכת לך זמן כתיבה, אחרי שאתה יודע מה אתה אמור לכתוב
(הערה חשובה: שעות אפיון עם הלקוח, שמעבר לשיחה הראשונית, אמורים להיות בתשלום)
האם מדובר בפרויקט ייחודי, או שמדובר בפלטפורמה שתוכל אח"כ לשרת אותך לפתח על בסיסה פרויקטים ללקוחות נוספים בהתאמות כאלו ואחרות
אחרי שהבנת מהלקוח מה הוא מעוניין
תשקלל לעצמך כמה שעות עבודה בערך יקח לך לבצע את זה
תזכור להוסיף ע"ז 25% כי תמיד, אבל תמיד, יש דברים שגם אתה וגם הלקוח לא חשבתם ע"ז מראש, ורואים רק תוך כדי ריצה
ואם הלקוח לא יודע כמה הוא מוכן לשים על השולחן
חבל לך על הזמן להכין לו הצעת מחיר
רק תעבוד להכין הצעת מחיר מסודרת
ושום דבר לא ייצא מזה
(ניתן לומר: הצעת מחיר מפורטת עולה 360 ש"ח שתקוזז מהעלות הכוללת בסיום העבודה)
תבדוק כספת ביומטרית
אם אין 'לוג' רישום איזה משתמש פתח ומתי
מה יעזור שיהיה סיסמאות שונות?
משום מה ה'אייקון / לחצן' לתרגום מהיר של גוגל
לפעמים מופיע ישירות בשורת הכתובת
ולפעמים לא
(מדובר בגלישה מאותו דפדפן ובאותו אתר,
לדוגמא: קבלתי מגוגל מספר תוצאות לשאלה מ'סטאק'
כאשר אני נכנס לתוצאה הראשונה - קופץ ה'סמליל' ובתוצאה השניה - לא
בשלישית - שוב נכנס וכו')
מישהו יכול להחכימני ברזי תוסף שימושי זה?
@שמחה-זו-הסיסמא אמר באנגלית בשביל תכנות:
שישם דגש על המילים שנצטרך בשפה המקצועית ופחות על ה'פירות וירקות'
האנגלית שאתה צריך בתכנות היא גם ובעיקר בשביל ה'שאר ירקות'
חווה-סקריפט הנחילה אצלי את התובנה
שמחסום השפה באנגלית זה לא (רק) שפת התכנות עצמה
אלא קריאת חומרי עזר ותיעוד באנגלית
האם אתה חושב שאמריקאי מלידה יודע לתכנת בעיניים עצומות כי הוא יודע אנגלית?
לא,
למה? כי לכל שפת תכנות יש את עולם המושגים שלו
שהפרט הטכני שבה, שהיא כתובה באנגלית
ידיעת האנגלית תעזור לך לבצע חיפוש טוב ואיכותי בגוגל
תוכל לסנן בשלוף את התוצאות ולהיכנס לקישורים רלוונטיים בלבד
תוכל לקרוא בקלות את המידע ב'טקסט הצף' ובחלוניות המידע
האנגלית הלא מקצועית תעזור לך לכתוב את המשתנים והקוד באנגלית
מה שמאוד יעיל ונכון טכנית בכתיבה
כך שמצד אחד - אל תפחד מלקפוץ למים ולתכנת גם ללא אנגלית (מניסיון אישי - אפשרי בהחלט)
ומצד שני - אל תוותר לעצמך להשקיע ללמוד אנגלית רגילה שתתן לך אפשריות רבות בעולם התכנות
מהי הדרך הקלה ו/או הנכונה
לשלוף מידע (SELECT בלבד) משתי טבלאות הנמצאות בשתי שרתים פיזיים שונים
ראית את האפשרות של sp_addlinkedsrvlogin
מעבר לפן הטכני שלא הצלחתי לתפעל אותה
יש שם אזהרה מפחידה לגבי אבטחת הסיסמאות
This example does not use Windows Authentication. Passwords will be transmitted unencrypted. Passwords may be visible in data source definitions and scripts that are saved to disk, in backups, and in log files. Never use an administrator password in this kind of connection. Consult your network administrator for security guidance specific to your environment.
נ.ב.
SELECT *
FROM [Name_Data_Base].[dbo].[Table_name] tb1
[@OdedDvir תרגמתי את השמות לאנגלית..... ]
מדובר על 'חברת אם' שמאגדת תת-חברות שהצטרפו במהלך השנים
ולכן עד היום הנתונים מפוזרים ומנוהלים במספר שרתים/תוכנות
בניתי תוכנה (C# WINFORM) ש'במודול CRM' אני מאגד את כל פעילות הלקוח/ספק
בכל החברות ובכל הווריאציות למקום אחד מסודר
אני מעוניין להציג פר 'ספק' את רשימת המוצרים שסיפק בטווח תאריכים לכל חברה, וכמה יש במלאי כרגע
כל הנתונים הללו (רשימת מוצרי הספק / דוח מכירות / מלאי) נגישים אצלי בתוכנה
אומנם נשלפים כרגע בתצוגה פרטנית פר מוצר
(הצד לקוח - רואה את כל המידע בבת אחת, מאחורי הקלעים עצבתי textBox שמוזן בהם המידע באמצעות שאילתות נפרדות)
וכעת אני מעוניין לקבל את הנתונים כטבלה (dataGridView) של כל מוצרי הספק בצורה מסודרת (לשימוש לדוחות / הזמנות וכד' )
ומדוע הארכתי בכל זה
כי חוששני שבמרחבי הC# ישנם אפשריות לקבל כל נתון בנפרד לטבלה זמנית,
ולאחד ולהציג אותה
(שאלה משנית בהנחה שזה אפשרי: מבחינת מהירות / אפשריות / משאבים
האם עדיף לבצע 'עמודות מחושבות' בתוכנה או בSQL)
@dovid
אני משתמש בזה כרגע חלקית מאוד
היה לי 'חור' בתחביר של זה (לעומת שאילתה רגילה בSQL שאני יכול קודם להריץ בSSMS ולראות האם התוצאה נכונה)
אחרי שראיתי את הדיון פה
הבנתי שהכלי שחסר לי זה LinqPad וכעת אני מנסה ללמוד כיצד לתפעל אותו
וזה הוכחה נוספת לתזה
@ארכיטקט אמר במנשר - אזהרה לציבור הצעיר לא להתפתות להתקרב למסגרת ישות של מייקרוסטופ:
שמי שכבר תקוע עם טכנולוגיות והרגלי עבודה, נמצא באזור נוחות שהוא לא רוצה לשנות אותו
@ארכיטקט
בתור נציג ה'ילדים' בפורום
ש'חוטא' בכתיבה בהנ"ל
אצרף את הגיגי
אתה בעצם מתאר את המגבלה הרצינית שקיימת ליצרני המכוניות האוטונומיות
אתה רואה את עצמך משקיע 350,000 ש"ח ברכישת רכב אוטונומי
ונוסע בכביש ירושלים - תל אביב במהירות 90 קמ"ש....
כאשר מסביבך דוהרות מכוניות על 120
(הרי אסור להם 'לתכנת' מהירות נסיעה מעבר למותר בכביש)
האם תשב ותמתין 40 דקות כדי להשתלב בנתיב יציאה....
בעוד כולם חותכים אותך מימין ומשמאל
כך שסביר שזה יכנס לשימוש בעיקר למוניות / אוטובוסים וזקנים/ות
והנמשל:
נהג מיומן כמוך שעבר קילומטאר'ז ארוך בכתיבת קוד / DB
אכן אין ספק שהחופש לבחור וליצור עצמאית גדול לאין ערוך
אבל לנהג צעיר
המגבלות הקיימות בשפה
זה המסלול הבטוח לכתיבת הקוד בצורה נכונה
אני ללא ידע מקדים בתכנות / אנגלית
הצלחתי לבנות תוכנה די מורכבת שפעילה ועובדת
רק בזכות המרובעות והקשיחות של השפה
שזרקה לי הערות ושגיאות כל הזמן
ולכן @ארכיטקט צודק שאסור לשבת בשקט ולהגיד 'זה עובד' - לא לגעת...
אלא לדעת להתקדם ולעבוד יעיל
ו @OdedDvir צודק שלכל זמן ועת
עת לבחור ועת לעזוב
באפשרות של @חוקר הקובץ PDF יורד אוטומטי כל פעם
ואילו אתה רוצה שזה יתעדכן כל הזמן
לגבי אפשרויות העיצוב
היות שלא שיתפת את מבנה הקובץ ומה התוצאה הוויזואלית הרצויה
מעט קשה להדריך כיצד לעצב
(מדובר על הצגת נתונים, ולא עיצוב אתר אינטרנט דרך זה....)
אבל כמדומני שיש שם מעט כלים שבמעט מעוף ויצירתיות ניתן להציג תצוגה טובה
(כגון שאם תמקם את הנתונים בA1 זה יראה .... ואם תמקם את זה במרכז הטבלה, יש לזה נראות בינוני פלוס)
@Y-Excel-Access
התשובה שענה @nach היא נכונה ומעולה
מה שבעצם עליך ליצור זה שתי לשוניות בגוגל שיטס
בלשונית הראשונה - תנהל את המידע המלא שלך
בלשונית השניה - תשחק עם העיצוב
(א. שים נוסחה הכי פשוטה שתשלוף את הנתונים הרלוונטיים מהלשונית הראשונה
ב. תמקם את זה במרכז הדף כגון עמודות H-K, תוריד בתצוגה את הקווי רשת וכן על זה הדרך)
לאחכ"מ תעשה קובץ>שיתוף>פרסום באינטרנט>תבחר לשתף רק את הלשונית הרלוונטית)
וזה יתעדכן אוטומטי לאנשים כל חמש דקות (או כניסה מחודשת לדף)
בדקתי כעת בתוכנת 'חשבשבת'
ואכן בצירוף קובץ - נשמר שם הקובץ + הסיומת (ללא הנתיב, אלא הפניה יחסית)
@dovid אמר בשליחת API ב Java:
בד"כ בAPI גם נצרכים לשלוח פרמטרים בכתובת או בגוף הבקשה (body/payload) וגם לפעמים צריכים אימות
@dovid אמר בשליפת סיומת קובץ - לפי שם הקובץ (C#):
יש הבדל בין לדעת לבין להסיק
כלל גדול
החכמתי.
לגבי הנקודה האם להעדיף מקום אחסון על פני כח חישוב
יצאתי מתוך הנחה (ללא מקור) שהיות שגם במקום אחסון אני צריך פעולת חישוב לשליפה>הרצת הקובץ
(שגם מצריכה חישוב, היות והקובץ אצלי נשמר בתיקיית התוכנה, ויש מספר משתמשים שמחוברים דרך תיקיית רשת כאשר האות כונן לחלקם שונה, אז אוכל לשמור רק את שם הקובץ והסיומת ללא הנתיב המלא )
אז למה לא לעשות ישירות רק את פעולת החישוב?
וע"ז תשובת @dovid סדרה לי את הראש
@dovid אמר בשליפת סיומת קובץ - לפי שם הקובץ (C#):
מה הבעיה להוסיף שדה של שם קובץ בכל רשומה, עם הסיומת והכל?
במידה וניתן להשיג את התוצאה הרצויה בריצה פשוטה של הקוד
מדוע לשמור סתם נתון בבסיס הנתונים
אני הרי לא שומר את הקובץ עצמו במסד
אלא רק נתון סטטי מקומי המפנה לשם/מיקום הקובץ
@חגי אמר בשליפת סיומת קובץ - לפי שם הקובץ (C#):
במקרה ויש לך כמה קבצים עם אותו שם וסיומת שונה, הוא יחזיר את הראשון
היות ואני מאפשר למשתמש להוסיף מספר סיומות
בתוצאה הזאת הוא שולף ראשון את ה.JPG (לפני הPDF)
בעוד אני מעוניין שהמשתמש יראה את הקובץ האחרון שנוצר
(בהנחה שהמשתמש צירף בהתחלה טיוטה בסיומת JPG ואת הקובץ הסופי בPDF, הקובץ המקורי לא נדרס אלא התווסף קובץ נוסף
ותמיד יוצג הטיוטה בסיומת .JPG)
האם יש אפשרות לעשות מניפולציה באמצעות File.GetCreationTime להצגת הקובץ האחרון שנוצר?
@OdedDvir
זה שההערה נכונה צודקת ובמקומה
לא אומר שאני יודע אנגלית.....
ככה התרגלתי
וזה עובד.....
ובכ"ז מקבל את ההערה הבונה
ולהבא כמו שאני 'מתרגם' בשאלה את דוגמת הקוד אצלי למשהו גנרי
אתרגם גם את האובייקטים
כיצד אני מאתר סיומת קובץ מקומי במחשב
או בניסוח אחר - כיצד אני פותח קובץ מקומי במחשב - שאני יודע את שם הקובץ, ללא הסיומת
מה אני מנסה לעשות?
יש לי טבלה שאני מאפשר לצרף לכל שורה, מסמך בודד מאחד מסוגי סיומות הקבצים
דוגמא:
OpenFileDialog הוספתחוזה = new OpenFileDialog();
הוספתחוזה.Filter = "contract Files|*.pdf;*.jpg;*.jpeg";
string סיומתקובץ = Path.GetExtension(הוספתחוזה.FileName);
string נתיביבואהוספתחוזה = הוספתחוזה.FileName;
string path = Directory.GetCurrentDirectory();
if (!Directory.Exists(path + "\\contract"))
Directory.CreateDirectory(path + "\\contract");
File.Copy(נתיביבואהוספתחוזה, path + "\\contract" + "\\" + מזההרשומה + סיומתקובץ, true);
ואני מעוניין באפשרות לפתוח בצורה ישירה את הקובץ
הדרך שאני מכיר זה:
System.Diagnostics.Process.Start(path + "\\contract" + "\\" + מזההרשומה + ".pdf");
איפה הסתבכתי?
בדרך הזו
חובה לציין בנוסף לשם הקובץ (המקבל ערך ידוע) את סיומת הקובץ
(שימוש ב* החזיר שגיאה)
שאיננה ידועה לי - היות וכאמור ניתן לצרף ממספר סיומות
ניסתי להשתמש במתודה Path.GetExtension
ללא הצלחה
אשמח לעזרתכם
@dovid אמר במניפולציות על שדות מחושבים ב - SQL:
אגב הCTE מיותר פה, אתה מייצר שאילתה על שאילתה, זה תת שאילתה קלאסית:
אכן,
צודק
זה רק היה דוגמא להבהרת נקודת השאלה (איך לגשת לעמודה מחושבת בגוף הselect ואיך בwhere )
(השאילתא המקורית אצלי מורכבת
[מכילה GROUP BY, ולא הסתדרתי עם הHAVING לפילטור הרצוי]
ומכילה מידע שאינו אפשרי לפרסום פה)
@dovid אמר במניפולציות על שדות מחושבים ב - SQL:
המשמעות של זה עבורי שלהבא בשאלות שלך עלי להתמקד רק בלענות על מה ששאלת, ולא לייעץ לך מה אני חושב
ממש לא...
דווקא התשובות המפורטות שלך
עוזרות לי להבין הרבה מעבר לשאלה הנקודתית
ומייעלת עבורי (ועבור שאר המשתמשים) ה-מ-ו-ן
אתה בדר"כ מביא רקע על התהליך, ומה אמור להיות הסינטקס (זה המילה?) מאחוריה
בזכות זה אני מצליח אח"כ לבצע חיפוש ולימוד עצמי המתבססות על הידע שלמדת אותנו פה
(גם לדעת מה לחפש זה מאוד חשוב)
אז
אשמח מאוד אם תמשיך להרחיב כמה שניתן בתשובה נקודתית
ובעיקר הרחבת הידע על האפשריות הנוספות האפשריות
(להתייעץ - זה לשמוע דעה שטרם חשבת עליה)