ארכיון הקטגוריה: Access

כותרות חוזרות על עצמן בכל עמוד של דוח משנה באקסס

מבוסס על פתרון של Allen Browne

בעיקרון – אין אפשרות מובנה
עוקפים זאת כך

1. פתח את דוח המשנה בתצוגת עיצוב.

2. בחלונית המיון וקיבוץ, הזן ביטוי שלא ישתנה,
לדוגמה:
= 1

3. ציין שאתה רוצה כותרת עליונה של קבוצה בביטוי זה.
Access מוסיף סעיף חדש לsubreport.
שים את הכותרות שאתה רוצה שיחזרו על עצמם בראש כל עמוד – כאן.

4. לחץ לחיצה ימנית על המקטע של כותרת עליונה של הקבוצה החדשה , ובחר מאפיינים.
בכרטיסיית עיצוב של המאפיינים, תסמן בסעיף "חזור על…" = כן

ומרגע זה – סיימת.
הכותרות חוזרות על עצמן בראש כל עמוד.

איך לגרום לשורה במבט טבלאי של דוח Access להסתיר את עצמה ?

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

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

כדי להסתיר את השורה פשוט נשים בתוך התאים הרייקים – פקד תיבת טקסט (ריק , ללא קשר לשדה)
וזהו.
עכשיו האירוע יסתיר את השורה כולה (לפי התנאים כמובן)

בהצלחה!

Credit : Yochai

פונקציה לבדיקת האם מחרוזת מתחילה באנגלית – VBA (Access)

לפעמים צריך ליישר אוטומטית

שדה ב-VBA

לשם כך בניתי פונקציה שבודקת האם השדה מתחיל באנגלית

במידה וכן – ניישר אותו בהתאם.

Public Function StringStratInEnglish(str As String) As Boolean
 Dim first_char As String
 On Error Resume Next
 
 StringStratInEnglish = False
 
 If Len(str) = 0 Then GoTo ExitHere
 first_char = Mid(str, 1, 1)
 
 If (Asc(first_char) >= 65 And Asc(first_char) <= 90) Or _
 (Asc(first_char) >= 97 And Asc(first_char) <= 122) Then
 
 StringStratInEnglish = True
 End If
 
ExitHere:
 Exit Function
End Function

אקסס – התמודדות עם תקלה 3211 – טבלה נעולה (Access VBA Error 3211 )

קורה לפעמים, מצב שבו צריך לשנות דברים בטבלה , למרות שהיא נעולה

המצב שלי היה כזה : לטופס היה טופס משנה שמבוסס על טבלה זמנית

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

הבעיה – Access לא נותן לך למחוק את הטבלה, כאשר טופס מאוגד אליה.

הפתרון – במקום למחוק את הטבלה, אפשר פשוט למחוק את הרשומות שבה, את זה אקסס כן מתיר.

ואז , את השאילתת שיוצרת את הטבלה הזמנית – יש להחליף בשאילתא INSERT רגילה.

בצורה כזו, Access מאפשרת את כל הפעולות, גם דרך ADO Recordset וגם דרך שאילתות.

בהצלחה!

התקנה שקטה של Access Runtime

כאשר אתה מפיץ תוכנות מבוססות Access, עם Access runtime

ואתה אורז את זה להפצה, נניח עם Inno Setup או תוכנות דומות.

אתה מעוניין שההתקנה של Access Runtime תרוץ בלי שאלות למשתמש

בלי קשקושים, בלי "אני מקבל את ההסכם" וכו' כו'

לצורך כך צריך לבצע את הפעולות הבאות :

הערה מקדימה :  מי שעובד בארגונים ומפיץ גירסה ארגונית , יכול להשתמש בכלי של מיקרוסופט לאריזת התקנות כאלו : OCT.

קובץ ההתקנה שיורד הוא למעשה Self-Extracting  שמכיל קבצים ותיקיות רבים.

אז דבר ראשון צריך אנחנו נחלץ את כל הקבצים לתיקיה , ואז כאשר יהיו לנו את קבצי ההתקנה עצמה של Access Runtime, רק אז נוכל להגדיר את ההתקנה השקטה (silent install).

החילוץ :

YourAccessRuntimeInstallFile /extract:YourFolder

ואז ניכנס לתיקיה שאליה חילצנו את הקבצים.

וניצור קובץ בשם config.xml  שיכיל את ה-XML הבא :

<Configuration Product="AccessRT"> 
<Display Level="Basic" CompletionNotice="Yes" SuppressModal="Yes" NoCancel="Yes" AcceptEula="Yes" /> 
<Logging Type="standard" Path="C:TEMP" Template="Microsoft_Access_2013_Runtime_Setup(*).log" /> 
<COMPANYNAME Value="Y" /> 
<Setting Id="SETUP_REBOOT" Value="Never" /> 
</Configuration>

אפשר למצוא הסבר מלא על כל הפרמטרים , וכל ה-nodes של ה-XML הזה בקישור הבא : http://technet.microsoft.com/en-us/library/cc179195(v=office.15).aspx

ואז מריצים את הקובץ setup שנמצא בתוך התיקיה שחילצנו  עם הפרמטר הבא :

setup.exe /config YourConfigFileFullPath.xml

וזהו… זה רץ בהתקנה שקטה.

 

תצוגה של nested grid (טבלה עם כינון פנימי) בטופס של access

בשאילתא של אקסס, קל מאוד ליצור כינון פנימי, כלומר שעבור כל רשומה מופיע סימן + ובלחיצה עליו רואים את כל הרשומות שביחס אחד לרבים לרשומה זו (מתוך טבלה ספציפית כמובן)
אבל
כאשר באים לעשות זאת בטופס מסוג גיליון נתונים
האקסס עושה את זה מסובך
ובכן השלבים הם כאלו
פתח טופס ריק
בטופס – שים טופס משנה של הטבלה ביחס של אחד לרבים
טופס המשנה ***חייב*** להיות שמקור הרשומה שלו הוא טבלה, לא שאילתא ולא שום דבר אחר פרט לטבלה.
ואז כוון את המאפיין תצוגת ברירת מחדל של הטופס הראשי ושל טופס המשנה ל-גיליון נתונים.
קשור בין הטפסים אם לא עשית זאת לפני כן
והפעל
עכשיו אפשר לראות סימן + גם בטופס…

תובנות לגבי CREATE TABLE באמצעות ADO / ADODB , מול ACCESS DATABASE

כמה תובנות לגבי CREATE TABLE באמצעות ADO / ADODB , מול ACCESS DATABASE

1. המילה user היא מילה שמורה ב-ADO , למרות ש-ACCESS כן מתיר שמות כאלו לשדות, ADO לא מרשה.

2. אפשר לשלוח שאילתות עם מפתחות ראשיים ומפתחות זרים, אבל זה לא יכול להיות באותה פקודה

חייבים להפריד את ה-CREATE TABLE מיצירת המפתחות.

כלומר אפשר ליצור מפתחות – באמצעות ALTER וכו'…

שיטה להתמודדות עם קבצים דפוקים באקסס – Way to deal with Access coruptted files

ישנה תכונה של אקסס שדופקת פעמים רבות קבצים שלמים או דוחות.

התכונה היא – תיקון אוטומטי של שמות

הצורה לפתור זאת – פשוטה מאוד, לבטל את השימוש בתכונה הזו

אפשרויות > מסד נתונים נוכחי > להוריד את ה-V מ "בצע תיקון אוטומטי של שמות"

מקור
ניסיון אישי
http://allenbrowne.com/bug-03.html