Archive

Archive for February, 2021

Python: My Orders Tracker P-2

February 28, 2021 2 comments


Learning : Pythn, sqlite, Database, SQL
Subject: Create a system to track the orders

In this part we will write the code to Add new Order to the system, and to Show the orders we have in the database. Also we will write tow new functions that we will use in our application, one is the Date Validation and the other is just to check if the user enter a [q or Q] during collecting data [Q mean Quit] then we will call the quit() function.

Before we start the Add new order function, we will write the def date_validation (the_d) : and we will pass the date that the user enter and will check if it is in the right format, here in our application we will check if it is in [dd-mm-yyyy] format, the function will return the ‘valid’ string if the date in in right format, otherwise it will return a message of error.

Here is the function code ..

# Date Validation function.
def date_validation (the_d) :

if the_d=="" or the_d[2] !='-' or the_d[5] !='-' :
return '\n Date Not Valid. [Date format: dd-mm-yyyy]'
else:

if not(len((the_d.split("-")[2])) == 4 ):
return '\n Date Not Valid "Bad Year". [Date format: dd-mm-yyyy].'
if not (len((the_d.split("-")[1])) == 2 and (int(the_d.split("-")[1]) > 0 and int(the_d.split("-")[1]) 0 and int(the_d.split("-")[0]) <=31)) :
return '\n Date Not Valid "Bad Day". [Date format: dd-mm-yyyy].'

return 'valid'

The other function as we said, we will call it after each data entry to check on user input if it is ‘Q’ or Not. Here is the code..

def q_to_quit(check):

# If the user enter [q or Q] the function will return quit function.
if check in ['q','Q'] :
return quit()

Now, we will start to write the function to Add new order, we will ask the user to enter the date for the order, such as Order date, order number, the description, price and so-on. Here is the code..

# Function to add new order to the system.
def add_order():
os.system('clear')
print("\n==========[ Add New Order ]==========\n")

while True :
print(' NOTE: Enter Q any time to EXIT/Quit. \n')
order_date = input(' Enter the Date of the Order. as[dd-mm-yyyy] > ')

q_to_quit(order_date)

if date_validation (order_date) == 'valid' :
break

else :
print(date_validation (order_date))

order_Num = input(' Enter the order ID or Number. > ')
q_to_quit(order_Num)

order_desc = input(' Enter the order Description. > ')
q_to_quit(order_desc)

order_price = input(' Enter the Order Price. > ')
q_to_quit(order_price)

order_quantity = input(' Enter the quantity of the order. > ')
q_to_quit(order_quantity)

shipment_price = input(' Enter the shipment_price. > ')
q_to_quit(order_price)

order_link = input(' Enter the hyper Link to the Order. > ')
q_to_quit(order_link)

order_img = input(' Enter the Image file path. > ')
q_to_quit(order_img)

order_desc = " ".join([word.capitalize() for word in order_desc.split(" ")])
c.execute ("INSERT INTO orders (order_date, order_num, order_desc, order_price,order_quantity, shipment_price , order_link, order_img ) VALUES(:order_date, :order_Num, :order_desc, :order_price, :order_quantity, :shipment_price , :order_link, :order_img)", {"order_date":order_date, "order_Num":order_Num , "order_desc":order_desc, "order_price":order_price,"order_quantity":order_quantity, "shipment_price":shipment_price , "order_link":order_link, "order_img":order_img})

db_conn.commit()

input('\n Press any key to Contenu..')

After adding a records to the database, now we want to show what we have and print it on the screen, so we will write a function to Show the data. Here is the code..

# Function to display the data on the screen. 


def show_order():
os.system('clear')
print("\n==========[ Show Orders ]==========\n")

c.execute ("select * from orders where o_id >0")
order_list = c.fetchall()

for x in range (0,len(order_list)):
print(" ID: ",order_list[x][0]," "*(10-(len(str(order_list[x][0])))), end='')
print("Date: ",order_list[x][1]," "*2, end='')
print(" Order Number: ",order_list[x][2]," "*(8 - len(order_list[x][2])))
print("Price: ",order_list[x][4]," "*(6 - len(str(order_list[x][4]))), end='')
print("Quantity: ",order_list[x][5]," "*(11 - len(str(order_list[x][5]))), end='')
print("Shipment Price: ",order_list[x][6]," "*(10 - len(str(order_list[x][6]))), end='')
print("[ Total Cost: ",(order_list[x][4]*order_list[x][5]) + order_list[x][6],"]")

print("\nDescription:",order_list[x][3])
print("Image:",order_list[x][8])
print("Link:",order_list[x][7])

print("-------------------------------------------------------------------\n")

input('\n Press any key to Contenu.. ')
ali radwani python project learning sql codeing

In Next Post: In the coming post P3 , we will write the codes to Delete an Order and to Edit an order.

To Download my Python code (.py) files Click-Here


Follow me on Twitter..


By: Ali Radwani

Flowers in my lens.. 2

February 25, 2021 2 comments

Using the #galaxy #Note9 I take a photo of this flowers in my garden. You may follow me on Twitter Here.

Ali radwani pink red flowers photo Photography

Python: My Orders Tracker P-1

February 23, 2021 2 comments


Learning : Pythn, sqlite, Database, SQL
Subject: Create a system to track the orders

Overview:
To track and manage the orders we making through the Internet, we will use the SQlite DateBase to store the data and Python to write the code.

Data we collect:
We will collect the following: order_date, order_ID, order_desc, order_price, shipment_price, order_quantity, order_link, order_img,

Functions: In this project we will create several functions related to the Order Management such as
– Add new Order.
– Edit an Order.
– Delete an Order.
– Show the orders.
Also we will use some of our older functions like date validation.

In Part 1:
– We will set-up the database, create the connection.
– We will create wote the code to create the table, and insert the zero-record.
– We will create the functions names, and the Main-Menu.

So, first code in this part is to import sqlite3, os
then, we will write the database connection as the commeing code:

# Create the data-base and name it as myorders.
db_conn = sqlite3.connect (“myorders.db”)

# set the connection.
c = db_conn.cursor()

Then, we will start writing the the code for the main menu and the functions names that we may have in the application, as in all our systems we will have the three most used function to Add, Edit and Delete the an Order, also we need to show the orders in our system/database, we also will use other function that will help us to Validate the user input such as Date-Validating.

Now, we will start to write the code, first the Main-Menu:

# The Main Menu

def main_menu():
    os.system('clear')
    print("\n==========[ Main Menu ]==========")
    print('     1. Add New Order.')
    print('     2. Edit an Order.')
    print('     3. Delete an Order.')
    print('     4. Show Orders.')
    print('     9. Exit.')
    
    user_choice = input("\n      Select from the Menu: > ") 
    
    # we will return the user choice.
    return user_choice



Now, we will have the all functions name with header code.

# All functions names with Header 


def add_order():
    os.system('clear')
    print("\n==========[ Add New Order ]==========")
    input('\n      Press any key to Contenu..')

def edit_order():
    os.system('clear')
    print("\n==========[ Edit an Order ]==========")
    input('\n      Press any key to Contenu..')
        
def del_order():
    os.system('clear')
    print("\n==========[ Delete an Order ]==========")
    input('\n      Press any key to Contenu..')    
        
def show_order():
    os.system('clear')



Last thing in this part, we will write the main while function in the body part that will call the Main_Menu and keep the user in the application until he/she select number 9 in the menu that mean Exit.

# running the menu and waiting for the user input.

    
while True :
    
    user_select = main_menu()
        
    if user_select == '1' :
        add_order()
        
    elif user_select == '2' :
        edit_order()
        
    elif user_select == '3' :
        del_order()  

    elif user_select == '4' :
        show_order()
        
    elif user_select == '9' :
        print('\n\n   Thank you for using this Appliation. ')
        break
            
    else :
        input('\n   Select Only from the list..  Press any key and try again..') 
    




In Next Post: In the coming post P2, we will write the codes for the Add new Order to the system also to Show the list of orders we have in the databse.


Part 1 Part 2 Part 3 Part 4



To Download my Python code (.py) files Click-Here




Follow me on Twitter..




By: Ali Radwani




Flowers in my lens ..1

February 21, 2021 3 comments

This is a photo taken by Galaxy Note9 handheld..

Ali radwani yellow flowers photo Photography

You may follow me on Twitter Here.

Ali,

Another sketch challenge week: Parrot

February 18, 2021 Leave a comment

This week sketch challenge @1hour1sketch is to Draw a Parrot, so here is my sketch using pencil, black Pen. More Sketches on my Sketch page .. also follow me on Twitter @h_ta3kees

Ali radwani drawing sketch challenge 1hour1sketch pen pencil parrot