|
|
Create calendars as Microsoft Access reports or PDF files. Specify month and year, number of months, first day for the week. Calendars display in the language defined in your Windows Region settings. Print however many months you want, such as 12 for a full year, on one or more pages depending on number of months and calendars per page. Show data from your queries. Open calendars in Access, send to printer, or create a PDF to show in a PDF reader or a web browser.
Use queries to show additional information such as holiday names and other calendar data from your database such as appointments, birthdays, schedules for your favorite sport or the ballet! whatever you want to see.
Create a Title to specifically describe displayed information.
There is lots of sample data for you to play with and get ideas from! Look at the sample queries to see how they're done, and read the Query Fields section. Turn your date-dependant data into easy-to-read calendars!
All you need to incorporate these calendars into your application is 4 modules. Calendars are scaled and positioned by VBA. There can be one or many per page.
So, you don't need this database to use the CalendarMaker! The download database has a form to make it easier to launch various calendar reports, and different report examples have VBA to position calendars, and loop, if there is more than one per page. However, you can just import the modules you need into your application, and put the logic you need into the code behind your reports.
YouTube: CalendarMaker and Document SQL at Access DevCon 2020 (15:03)
YouTube: RowSourceType Callback Function in Microsoft Access (12:33)
The CalendarMaker is written in VBA and runs in Microsoft Access. It uses Report .Line and .Print methods to do all the drawing and writing. Calendars can be scaled and positioned, so you could show multiple calendars on each page.
The default report type on the menu is full-page calendars, but you can choose something else, like multiple calendars on each page in rows and columns, which can be customized. Be sure to open only one calendar report at a time. They all use the same variables.
When the CalendarMaker application opens, one click of a button is how fast its possible to get a calendar for the current month that you can print. There could be more information on each day, but nothing was specified. Sometimes this is exactly what you want, so you can handwrite with pencil or pen, and plan or document.
Title: The MT6785 Authentication File: Gateway to MediaTeK Device Recovery
In the intricate ecosystem of Android software development and mobile device repair, few components are as critical yet misunderstood as the authentication (auth) file. For devices powered by the MediaTek (MTK) MT6785 chipset—commonly known as the Helio G90 and G90T—the auth file acts as a cryptographic key, bridging the gap between a computer and the device’s core storage. Understanding the function and necessity of the MT6785 auth file is essential for technicians, developers, and enthusiasts attempting to unbrick or flash devices containing this specific silicon.
To understand the auth file, one must first understand the architecture of modern MediaTek chips. The MT6785 is a mid-range gaming-centric System on Chip (SoC) found in popular devices like the Redmi Note 8 Pro and various Realme models. Unlike older generations of chips, modern MTK processors implement a strict security architecture known as the Secure Boot mechanism. This mechanism is designed to prevent unauthorized access to the device’s flash storage. When a device is powered off or enters a "brick" state (where it cannot boot into the operating system), it typically enters a mode often referred to as BROM (Boot ROM) mode. In this state, the processor allows communication via USB, but it will not accept any write commands to the NAND or eMMC storage without verifying the identity of the host computer.
This is where the MT6785 Auth File becomes relevant. "Auth" stands for authentication. It is a specialized file, usually proprietary to the device manufacturer (such as Xiaomi, Realme, or Infinix), that contains digital signatures and keys recognized by the chipset's Secure Boot validation process. When a flashing tool—such as SP Flash Tool or the MTK Auth Bypass Tool—attempts to write a new firmware image to the device, the MT6785 chip challenges the tool for credentials. The auth file provides these credentials. Without it, the flashing tool will stall, resulting in errors such as "Status Send Auth Fail" or "BROM Error: S_SECURITY_AUTH_NOT_FOUND."
The necessity of this file became a significant hurdle in the repair community. In the past, flashing a stock ROM to recover a device was a relatively open process. However, as security tightened to combat theft and malware injection, manufacturers began gating the flashing process. For the MT6785, this meant that generic flashing tools were rendered ineffective unless the user possessed the specific auth file corresponding to the device’s brand or utilized specialized paid software capable of bypassing the authentication protocol.
It is important to distinguish between the two primary methods of dealing with MT6785 authentication. The first method involves obtaining the official auth file. This is the safest route, ensuring that the digital handshake between the PC and the phone is legitimate. This method is typically used by authorized service centers. The second method involves using specialized tools that exploit the MTK port vulnerability to bypass the authentication check entirely. While effective, bypassing auth can carry risks, potentially destabilizing the device's security features or voiding warranties.
In practical application, the MT6785 auth file is a lifeline. When a user attempts to downgrade a device's firmware or install a custom ROM and the process fails, the phone may be left in a "hard brick" state—unable to boot, charge, or display anything on the screen. Standard flashing tools will refuse to write the original firmware due to the security lock. By loading the correct MT6785 auth file into the flashing tool interface, the technician unlocks the write protection, allowing the BROM to accept the firmware and restoring the device to functionality. mt6785 auth file
In conclusion, the MT6785 auth file is more than just a piece of software; it is a fundamental component of the security infrastructure of modern Helio G90-series devices. While it poses a challenge for repair technicians by adding a layer of complexity to the flashing process, it serves a vital role in protecting the integrity of the hardware and user data. For anyone working with the MT6785 chipset, mastering the use of authentication files is not optional—it is a prerequisite for successful device recovery and maintenance.
In the tech underworld, the MT6785 Auth File is like a digital skeleton key. The MT6785 is the technical name for the MediaTek Helio G90 series chipset, found in many popular mid-range smartphones.
Here is a short story about a technician’s race against a "bricked" device. The Midnight Unbrick
The neon sign outside Leo’s repair shop flickered, casting a jittery blue light over a workbench cluttered with opened motherboards and precision screwdrivers. It was 11:00 PM, and on the mat lay a "brick"—a smartphone that refused to turn on, vibrate, or even show a charging icon.
The owner was desperate; the phone held years of unbacked-up family photos. Leo knew the problem: a failed software update had corrupted the system. To fix it, he needed to flash new firmware, but the device was locked down tight by MediaTek’s security.
"Come on, Helio," Leo muttered, connecting the phone to his PC. The flashing tool on his monitor blinked a harsh red error: "Authentication Required." Modern MediaTek chips, like the Title: The MT6785 Authentication File: Gateway to MediaTeK
, use an "Auth" (Authentication) system to prevent unauthorized software changes. Without the right signature, the phone’s bootloader would remain a fortress. Leo spent the next hour scouring his private archives and trusted developer forums like XDA Developers Finally, he found it: a verified MT6785_Auth.auth
He loaded the file into his flashing tool. This was the digital handshake the phone needed. He held the volume buttons, plugged in the USB cable, and watched the status bar. For three seconds, the room was silent. Then, the red bar turned yellow, then a steady, pulsing purple. “Sending Auth...” the screen read. “Success.”
The firmware began to pour into the device like water into a dry well. Minutes later, the phone vibrated. The screen glowed with the manufacturer’s logo. Leo exhaled, leaning back in his chair as the "Family Photos" folder appeared on his desktop backup. The skeleton key had worked.
The MT6785 auth file is related to MediaTek (MTK) devices, specifically those using the MT6785 chipset. This chipset is commonly found in various Android smartphones.
The auth file, short for authentication file, plays a crucial role in the flashing and unlocking process of MTK devices. Here's a basic guide:
No. These files are cryptographically signed by MediaTek. No online generator exists – any website claiming to generate auth files is a scam. Warning: There is no universal “unlock all” Auth file
MediaTek is moving toward Hardware Unique Keys (HUK) and RPMP (Rollback Protected Metadata Partition). Future chips (Dimensity series) use a more robust authentication called Secure BROM that requires a unique device-specific certificate.
For MT6785, since it is a 2019–2021 chipset, auth files will remain relevant for the next 3–4 years as these devices enter the used and repair market in large volumes.
Since public MT6785 auth files are rare, technicians often use auth bypass tools:
Warning: There is no universal “unlock all” Auth file. Each OEM (Xiaomi, Realme, Tecno, etc.) has its own unique authentication keys.
Legitimate Sources:
Third-Party/Paid Sources (Use at your own risk):
redmi_note_8_pro_auth.bin). Verify hashes carefully – malicious Auth files can brick your device.Some advanced users extract the preloader and lk (little kernel) from a stock ROM and use a patched version of SP Flash Tool (like SP Flash Tool v5.2044 with Bypass Ultra) to skip authentication. This is not true “auth file” usage but a workaround.
This is the most common error. SP Flash Tool attempts to download the DA, but the BootROM says “unauthorized.” Loading the correct auth file resolves this immediately.
Here's a calendar in English for December 2019 with American holidays. You could change the qCalendarHolidays_US query to eliminate some of the less-known holidays by adding criteria for the Lev field (Level) and remove anything greater than 3, or maybe 1, depending on what you want to show. The data comes from the cal_HolidayCtry table, which you could swap for your own holiday table.
If you show calendar data AND holidays, the font size for holiday names is smaller. This calendar has a title defined to be "Abby's Appointments". Some days have more than one appointment, so text is combined using whatever is your list separator character for Windows. For Americans, this will be a comma.
Calendars in different languages for different countries, with holidays. I've entered holidays for 2019 and 2020 for America, and five other countries. The following calendars were created by the CalendarMaker:
First day of the week is Sunday
First day of the week is Monday
First day of the week is Sunday, like Americans ... but the holidays are a little different ...
First day of the week is lundi
First day of the week is domingo
First day of the week is mandag
CalendarMaker requiredTo import the CalendarMaker tool into another database, you'll need these 4 modules: | |
| Module | mod_CALENDAR_MAKER_s4p |
| Module | mod_Properties_s4p_cal |
| Module | mod_Registry_GetSeparator_Branislav |
| Module | mod_api_GetDeviceCaps_PPI_s4p_cal |
+CalendarMaker menu formIf you also want the menu form and the full-page landscape report, you'll need these objects too. | |
| Table | cal_NUMBER |
| Table | cal_Reports |
| Form | f_CalendarMaker_MENU |
| Report | rCALENDAR_Fullpage_Landscape |
optional, for holiday queries
| |
| Table | cal_HolidayCtry |
| Query | qrHolidays_caEN |
| Query | qrHolidays_FR |
| Query | qrHolidays_MX |
| Query | qrHolidays_NO |
| Query | qrHolidays_UK |
| Query | qrHolidays_US |
Optional tables that are nice to have if you're building international applications ... always changing ... | |
| Table | cal_Country |
| Table | cal_Language |
| Table | cal_TimeZone |
Optional reports for multiple calendars on each page in rows and columns | |
| Report | rCALENDARS_Landscape |
| Report | rCALENDARS_Portrait |
other optional reports | |
| Report | rCalendar_1month_HalfPage_Roses_Portrait |
| Report | rCalendar_3months_Roses_Landscape |
| Report | rCalendars_3monthsPage_Picture_Landscape |
Calendar Custom Picture featurenot done, so this will get better | |
| Table | cal_PicCategory |
| Table | cal_PicCategory |
| Table | cal_Picture |
| Form | f_cal_PICTURE |
| Report | rCalendar_HalfPage_Picture_Portrait |
| Module | mod_Browse |
| Module | mod_Dir_Exist_Path_PathFile |
| Module | mod_Dir_MakeAPath |
Sample: Games and Sportsif you like sports, you'll like this! | |
| Table | gamDiv |
| Table | Games |
| Table | GamesTeams |
| Table | gamSports |
| Table | gamTeams |
| Table | gamVenues |
| Query | qGames_REQUIRED |
| Query | qCalendar_Games_NFL |
| Query | qCalendar_Games_Spurs |
| Query | qGame_Team_Ordr |
| Form | f_Game_SPORTS |
| Form | f_GAMES_mainform |
| Form | f_Games_sub |
| Form | f_GamesTeams_sub |
| Form | f_GameTeam_Ordr_sub |
Other Samples | |
| Table | Orderz |
| Table | Paymentz |
| Table | Production |
| Table | c_Address |
| Table | c_AdrType |
| Table | c_Appointment |
| Table | c_ApptType |
| Table | c_Contact |
| Query | qCalendar_Appointments_Abigail |
| Query | qCalendar_ContactBirthdays_Year |
| Query | qCalendar_Orders |
| Query | qCalendar_Payments |
| Query | qCalendar_ProductionSales |
| Form | f_CalendarMaker_Appointments |
Stephen Lebans' tool to save and restore Relationships Diagram | |
| Table | tblRelationshipViews |
| Form | frmRelationshipViewsAdd-Modify |
| Module | clsCommonDialog |
After importing the modules, be sure to Debug, Compile the code. Save after the project compiles. Alt-F11 to switch to the VBE (Visual Basic Editor)
Needs VBA7 to run. Fixed code for 32-64 with the help of Peter Cole, the world expert on this topic. Thanks to Garry for telling me that running in 64-bit didn't work.
Download Peter's Scanner and Viewer (comes with scanner)
to find problems and lookup correct syntax for API calls.
https://www.thememydatabase.co.uk/access32to64.html
it's free -- click the Download button and then click Add to Cart in the screen that pops up. There won't be a charge.
If you're using Access 2007, get this version. Sample data for dates in 2020 or 2021
If you want to download a version where you can specify
background day colors in your data, as shown below, go to
https://msaccessgurus.com/tool/CalendarMaker_DayColor.htm
This is a regular ACCDB file with source code. It may be used freely, but you may not sell it in whole or in part. You may include it in applications you use yourself, and that you develop to help others. Keep attribution. Use at your own risk.
Remember to unblock the ZIP file, (remove Mark of the Web) before extracting the file(s). Here are steps to do that: https://msaccessgurus.com/MOTW_Unblock.htm
Report Draw Reference for VBA syntax and help for drawing on Access reports.
Help: WeekdayName function
Help: Report.Line method
Help: Report.Print method
Help: Report.TextHeight method
Help: Report.TextWidth method
Help: Report.CurrentX property
Help: Report.CurrentY property
Help: Report.FontSize property
Someone wrote and asked me to make my popup calendar to pick dates to use Monday as the start day for the week since he's in France and that's the way they do it.
I'm fascinated by the power of drawing on reports, and so I dove into making calendars ... do you like it?
If you want to customize this in a way that isn't demonstrated, or need help understanding, contact me. I'm happy to help.
Special thanks to Duane Hookom, Dale Fye, Daniel Pineault, Arvin Meyer, and Adrian Bell.
Please donate to help with costs, thank you!
Communicate, collaborate, and appreciate ...
email me anytime at info@msAccessGurus
Do you have a project that could benefit from an expert developer helping you? Let's connect and build your application together. As needed, I'll pull in code and features from my vast libraries, cutting out lots of development time. Let's build whatever you're working on together! I look forward to hearing from you.
Email me anytime at training@msAccessGurus
~ crystal
Let's connect and team-develop while we build your application together.