Skip to main content

Basic util library for progress bar and cron trigger and mssql db check related operation

Project description

psvutils

Under construction! Not ready for use yet! Currently experimenting and planning!

Developed by Pritam Sarkar 1995 from pritamSarkar123 (c) 2023

Examples of How To Use (Alpha Version + Buggy)

Creating A Progressbar

from psvutils import Progressbar



pb = ProgressBar(total=200)



for _ in range(200):

    """main code block"""

    pb.update()

(venv) C:\***\***>python main.py

████████████████████████████████████████████████████████████████████████████████████████████████████|100.00%

"""

    Args:

        total (int): The total number of items in the task.

        progress (int, optional): The current progress value (default is 0).

        counter (int, optional): The amount by which the progress increases in each update (default is 1).

        color (str, optional): The color to use for the progress bar (default is colorama.Fore.YELLOW).

        end_color (str, optional): The color to use for the progress bar when it reaches 100% (default is colorama.Fore.GREEN).

    Returns:

        A Progressbar instance

"""

Creating a quartz cron based trigger

from psvutils import Trigger

tr = Trigger("0 * 0 ? * * *", start_date=datetime.datetime.now())



print(Trigger.check_valid_cron_or_not("0 * 0 ? * * *"))



for _ in range(20):

    """next 20 triggers"""

    print(tr.get_next())

(venv) C:\***\***>python main.py

True

2023-10-19 13:49:00

2023-10-19 13:50:00

2023-10-19 13:51:00

2023-10-19 13:52:00

2023-10-19 13:53:00

2023-10-19 13:54:00

2023-10-19 13:55:00

2023-10-19 13:56:00

2023-10-19 13:57:00

2023-10-19 13:58:00

2023-10-19 13:59:00

2027-10-14 13:49:00

2027-10-14 13:50:00

2027-10-14 13:51:00

2027-10-14 13:52:00

2027-10-14 13:53:00

2027-10-14 13:54:00

2027-10-14 13:55:00

2027-10-14 13:56:00

2027-10-14 13:57:00

"""

    Args:

        quartz_expression (str): A Quartz Cron expression.

        infinite (bool): Whether the trigger should run infinitely.

        start_date (datetime.datetime, optional): The start date for the trigger.

        end_date (datetime.datetime, optional): The end date for a finite run.

        default_week_delta (int, optional): The default number of weeks to run.



    Returns:

        A Trigger instance

"""
from psvutils import check_mssql_db_connection

databaseConfigs = {'username': 'xxxx', 'password':'xxxx', 'windows_integrated_auth':False, 'domain': '', 'server_name': 'DESKTOP-G2UIUMK\SQLEXPESS,1435', 'database':'xxx','driver_name':'SQL Server' }

query = "SELECT * FROM sys.tables"





print(check_mssql_db_connection(databaseConfigs, query)) # incorrect databaseConfigs or query

print(check_mssql_db_connection(databaseConfigs, query)) # correct databaseConfigs or query

print(check_mssql_db_connection(databaseConfigs)) # incorrect databaseConfigs or query

print(check_mssql_db_connection(databaseConfigs)) # correct databaseConfigs or query

C:\***\***>python main.py

(False, 'Database Connection Failed!')

(True, 'Connection Established And Found Tables!')

(False, 'Database Connection Failed!')

(True, 'Connection Established And Found Tables!')

(False, 'Database Connection Failed!')

"""

    Checks the database connection and executes a SELECT query.



    Parameters:

    - databaseConfigs (Dict[str, str]): A dictionary containing the configuration settings for the database connection. It should include keys such as 'host', 'port', 'user', 'password', 'database', and any other required parameters, all of type str.

    - query (str): The SQL query to be executed, which is expected to be a SELECT query.



    Returns:

    - Tuple (bool, str):

        - A boolean value indicating the success of the operation.

            - True if the connection is established and the query returns results.

            - False if there are any failures during the operation.

        - A message describing the outcome of the operation.



    Note:

    - This function updates the 'query' key in the 'databaseConfigs' dictionary with the provided query.

    - It attempts to establish a database connection and execute the given SELECT query.

    - If the query is a SELECT query and the connection is successful, it checks if any tables are returned.

    - If tables are found, it returns True and a success message. Otherwise, it returns False and a relevant error message.

    - If there are any exceptions during the operation, it returns False and an error message.



    Example Usage:

    database_config = {

        'host': 'localhost',

        'port': '3306',

        'user': 'username',

        'password': 'password',

        'database': 'my_database',

    }

    query = "SELECT * FROM my_table"

    success, message = check(database_config, query)

    if success:

        print(message)  # Connection Established And Found Tables!

    else:

        print(message)  # Database Connection Failed!

    """

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

psvutils-0.0.7.tar.gz (7.8 kB view hashes)

Uploaded Source

Built Distribution

psvutils-0.0.7-py3-none-any.whl (8.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page