Mr. Laba-Luvah's Financiers presentation (2015 june26)Rogel Tapang
Self-service laundry business is BIG business...
1. Demand is constant - everyone needs to laundry
2. Cash business - no collection problems
3. No inventory - customers bring their own supplies
4. Requires minimal manpower - 1 to 2 attendants per shop is ok
5. Minimal owner supervision - our system allows remote monitoring
Our franchise is worth P300,000 but you have a chance to have it for FREE!!!
Please review the presentation here and email me at rogeltapang@gmail.com for more information.
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...confluent
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed real-time database.
In this talk, I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS).
Building upon this, I explain how to build common business functionality by stepping through the patterns for: – Scalable payment processing – Run it on rails: Instrumentation and monitoring – Control flow patterns Finally, all of these concepts are combined in a solution architecture that can be used at an enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
Mr. Laba-Luvah's Financiers presentation (2015 june26)Rogel Tapang
Self-service laundry business is BIG business...
1. Demand is constant - everyone needs to laundry
2. Cash business - no collection problems
3. No inventory - customers bring their own supplies
4. Requires minimal manpower - 1 to 2 attendants per shop is ok
5. Minimal owner supervision - our system allows remote monitoring
Our franchise is worth P300,000 but you have a chance to have it for FREE!!!
Please review the presentation here and email me at rogeltapang@gmail.com for more information.
The Art of The Event Streaming Application: Streams, Stream Processors and Sc...confluent
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed real-time database.
In this talk, I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS).
Building upon this, I explain how to build common business functionality by stepping through the patterns for: – Scalable payment processing – Run it on rails: Instrumentation and monitoring – Control flow patterns Finally, all of these concepts are combined in a solution architecture that can be used at an enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
Kakfa summit london 2019 - the art of the event-streaming appNeil Avery
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed real-time database.
In this talk, I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS).
Building upon this, I explain how to build common business functionality by stepping through the patterns for: – Scalable payment processing – Run it on rails: Instrumentation and monitoring – Control flow patterns Finally, all of these concepts are combined in a solution architecture that can be used at an enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
Programming in Java: Control Flow. Last delivered in 2016. All educational material listed or linked to on these pages in relation to King's College London may be provided for reference only, and therefore does not necessarily reflect the current course content.
Kafka summit SF 2019 - the art of the event-streaming appNeil Avery
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed realtime database.
In this talk, I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS). Building upon this, I explain how to build common business functionality by stepping through patterns for Scalable payment processing Run it on rails: Instrumentation and monitoring Control flow patterns (start, stop, pause) Finally, all of these concepts are combined in a solution architecture that can be used at enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
The art of the event streaming application: streams, stream processors and sc...confluent
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed realtime database. In this talk I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS). Building upon this, I explain how to build common business functionality by stepping through patterns for Scalable payment processing Run it on rails: Instrumentation and monitoring Control flow patterns (start, stop, pause) Finally, all of these concepts are combined in a solution architecture that can be used at enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
C# is an elegant and type-safe object-oriented language that enables developers to build a variety of secure and robust applications that run on the .NET Framework. You can use C# to create Windows client applications, XML Web services, distributed components, client-server applications, database applications, and much, much more. Visual C# provides an advanced code editor, convenient user interface designers, integrated debugger, and many other tools to make it easier to develop applications based on the C# language and the .NET Framework.
Learn C#.Net in simplified way.
This talk, presented at I.T.A.K.E 2013, explores options for revising, repairing, and extending good, bad, and ugly code. It takes a hard look at some good, bad, and ugly code written by the presenter and others.
Most people work with code that has both good and bad parts. The challenge with such a mix is how to modify what’s there without damaging the good parts, making bad things worse, or ugly situations even uglier. Sometimes we get an opportunity to make major repairs. But more often, we can only make small, incremental improvements. What we can do is constrained by cost, consistency, and compatibility concerns. Living with good, bad, and even ugly code is never easy.
But as Clint Eastwood says, “Sometimes if you want to see a change for the better, you have to take things into your own hands.”
In this talk, I'm presenting an alternative approach to thinking about UI and navigation on iOS - one that is declarative and that I find easy to reason about in a big application. I did live coding and the link is on the last slide. Enjoy!
From list sorting to network routing, and from hash tables to capacity planning, a programmer's daily work is filled with probability. We use probabilistic algorithms, data structures, and systems constantly often without even thinking about it. Experienced engineers reach for probabilistic algorithms frequently and intentionally, especially when building systems of serious scale. How do probabilistic algorithms actually work in practice? And how do we know they'll be safe and reliable in our critical production systems? We'll address those questions, explore a few algorithms, and see why "with high probability" is often better than "exactly".
Intro To C++ - Cass 11 - Converting between types, formatting floating point,...Blue Elephant Consulting
This presentation is a part of the COP2272C college level course taught at the Florida Polytechnic University located in Lakeland Florida. The purpose of this course is to introduce students to the C++ language and the fundamentals of object orientated programming..
The course is one semester in length and meets for 2 hours twice a week. The Instructor is Dr. Jim Anderson.
Intro To C++ - Class 11 - Converting between types, formatting floating point...Blue Elephant Consulting
This presentation is a part of the COP2272C college level course taught at the Florida Polytechnic University located in Lakeland Florida. The purpose of this course is to introduce students to the C++ language and the fundamentals of object orientated programming..
The course is one semester in length and meets for 2 hours twice a week. The Instructor is Dr. Jim Anderson.
This slide notes are more than 10 years old of my teacher Mr Karim Zebari. He uses a brilliant simple language to explain programming principles step by step.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Kakfa summit london 2019 - the art of the event-streaming appNeil Avery
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed real-time database.
In this talk, I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS).
Building upon this, I explain how to build common business functionality by stepping through the patterns for: – Scalable payment processing – Run it on rails: Instrumentation and monitoring – Control flow patterns Finally, all of these concepts are combined in a solution architecture that can be used at an enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
Programming in Java: Control Flow. Last delivered in 2016. All educational material listed or linked to on these pages in relation to King's College London may be provided for reference only, and therefore does not necessarily reflect the current course content.
Kafka summit SF 2019 - the art of the event-streaming appNeil Avery
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed realtime database.
In this talk, I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS). Building upon this, I explain how to build common business functionality by stepping through patterns for Scalable payment processing Run it on rails: Instrumentation and monitoring Control flow patterns (start, stop, pause) Finally, all of these concepts are combined in a solution architecture that can be used at enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
The art of the event streaming application: streams, stream processors and sc...confluent
Have you ever imagined what it would be like to build a massively scalable streaming application on Kafka, the challenges, the patterns and the thought process involved? How much of the application can be reused? What patterns will you discover? How does it all fit together? Depending upon your use case and business, this can mean many things. Starting out with a data pipeline is one thing, but evolving into a company-wide real-time application that is business critical and entirely dependent upon a streaming platform is a giant leap. Large-scale streaming applications are also called event streaming applications. They are classically different from other data systems; event streaming applications are viewed as a series of interconnected streams that are topologically defined using stream processors; they hold state that models your use case as events. Almost like a deconstructed realtime database. In this talk I step through the origins of event streaming systems, understanding how they are developed from raw events to evolve into something that can be adopted at an organizational scale. I start with event-first thinking, Domain Driven Design to build data models that work with the fundamentals of Streams, Kafka Streams, KSQL and Serverless (FaaS). Building upon this, I explain how to build common business functionality by stepping through patterns for Scalable payment processing Run it on rails: Instrumentation and monitoring Control flow patterns (start, stop, pause) Finally, all of these concepts are combined in a solution architecture that can be used at enterprise scale. I will introduce enterprise patterns such as events-as-a-backbone, events as APIs and methods for governance and self-service. You will leave talk with an understanding of how to model events with event-first thinking, how to work towards reusable streaming patterns and most importantly, how it all fits together at scale.
C# is an elegant and type-safe object-oriented language that enables developers to build a variety of secure and robust applications that run on the .NET Framework. You can use C# to create Windows client applications, XML Web services, distributed components, client-server applications, database applications, and much, much more. Visual C# provides an advanced code editor, convenient user interface designers, integrated debugger, and many other tools to make it easier to develop applications based on the C# language and the .NET Framework.
Learn C#.Net in simplified way.
This talk, presented at I.T.A.K.E 2013, explores options for revising, repairing, and extending good, bad, and ugly code. It takes a hard look at some good, bad, and ugly code written by the presenter and others.
Most people work with code that has both good and bad parts. The challenge with such a mix is how to modify what’s there without damaging the good parts, making bad things worse, or ugly situations even uglier. Sometimes we get an opportunity to make major repairs. But more often, we can only make small, incremental improvements. What we can do is constrained by cost, consistency, and compatibility concerns. Living with good, bad, and even ugly code is never easy.
But as Clint Eastwood says, “Sometimes if you want to see a change for the better, you have to take things into your own hands.”
In this talk, I'm presenting an alternative approach to thinking about UI and navigation on iOS - one that is declarative and that I find easy to reason about in a big application. I did live coding and the link is on the last slide. Enjoy!
From list sorting to network routing, and from hash tables to capacity planning, a programmer's daily work is filled with probability. We use probabilistic algorithms, data structures, and systems constantly often without even thinking about it. Experienced engineers reach for probabilistic algorithms frequently and intentionally, especially when building systems of serious scale. How do probabilistic algorithms actually work in practice? And how do we know they'll be safe and reliable in our critical production systems? We'll address those questions, explore a few algorithms, and see why "with high probability" is often better than "exactly".
Intro To C++ - Cass 11 - Converting between types, formatting floating point,...Blue Elephant Consulting
This presentation is a part of the COP2272C college level course taught at the Florida Polytechnic University located in Lakeland Florida. The purpose of this course is to introduce students to the C++ language and the fundamentals of object orientated programming..
The course is one semester in length and meets for 2 hours twice a week. The Instructor is Dr. Jim Anderson.
Intro To C++ - Class 11 - Converting between types, formatting floating point...Blue Elephant Consulting
This presentation is a part of the COP2272C college level course taught at the Florida Polytechnic University located in Lakeland Florida. The purpose of this course is to introduce students to the C++ language and the fundamentals of object orientated programming..
The course is one semester in length and meets for 2 hours twice a week. The Instructor is Dr. Jim Anderson.
This slide notes are more than 10 years old of my teacher Mr Karim Zebari. He uses a brilliant simple language to explain programming principles step by step.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Welocme to ViralQR, your best QR code generator.ViralQR
Welcome to ViralQR, your best QR code generator available on the market!
At ViralQR, we design static and dynamic QR codes. Our mission is to make business operations easier and customer engagement more powerful through the use of QR technology. Be it a small-scale business or a huge enterprise, our easy-to-use platform provides multiple choices that can be tailored according to your company's branding and marketing strategies.
Our Vision
We are here to make the process of creating QR codes easy and smooth, thus enhancing customer interaction and making business more fluid. We very strongly believe in the ability of QR codes to change the world for businesses in their interaction with customers and are set on making that technology accessible and usable far and wide.
Our Achievements
Ever since its inception, we have successfully served many clients by offering QR codes in their marketing, service delivery, and collection of feedback across various industries. Our platform has been recognized for its ease of use and amazing features, which helped a business to make QR codes.
Our Services
At ViralQR, here is a comprehensive suite of services that caters to your very needs:
Static QR Codes: Create free static QR codes. These QR codes are able to store significant information such as URLs, vCards, plain text, emails and SMS, Wi-Fi credentials, and Bitcoin addresses.
Dynamic QR codes: These also have all the advanced features but are subscription-based. They can directly link to PDF files, images, micro-landing pages, social accounts, review forms, business pages, and applications. In addition, they can be branded with CTAs, frames, patterns, colors, and logos to enhance your branding.
Pricing and Packages
Additionally, there is a 14-day free offer to ViralQR, which is an exceptional opportunity for new users to take a feel of this platform. One can easily subscribe from there and experience the full dynamic of using QR codes. The subscription plans are not only meant for business; they are priced very flexibly so that literally every business could afford to benefit from our service.
Why choose us?
ViralQR will provide services for marketing, advertising, catering, retail, and the like. The QR codes can be posted on fliers, packaging, merchandise, and banners, as well as to substitute for cash and cards in a restaurant or coffee shop. With QR codes integrated into your business, improve customer engagement and streamline operations.
Comprehensive Analytics
Subscribers of ViralQR receive detailed analytics and tracking tools in light of having a view of the core values of QR code performance. Our analytics dashboard shows aggregate views and unique views, as well as detailed information about each impression, including time, device, browser, and estimated location by city and country.
So, thank you for choosing ViralQR; we have an offer of nothing but the best in terms of QR code services to meet business diversity!
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
3. 55
Gantt Chart for 2nd Semester A.Y. 2010-2011
Office of the Treasurer of Municipal Government of Nasugbu, Batangas
Automated Billing System and Touch Screen Capable Inquiry System
Proponents: Thesis Adviser:
Mark Albert B. Iglesias Mrs. Lorissa Joanna E. Bueanas
Emmanuel T. Sanchez
Mark Jayson O. Osian
4. 56
Gantt Chart for 1st Semester A.Y. 2011-2012
Office of the Treasurer of Municipal Government of Nasugbu, Batangas
Automated Billing System and Touch Screen Capable Inquiry System
Proponents: Design Project Adviser:
Mark Albert B. Iglesias Mrs. Lorissa Joanna E. Bueanas
Emmanuel T. Sanchez
Mark Jayson O. Osian
6. 58
Evaluation Form for Manual Process of Billing System
Name: ___________________________ Date: _____________
Position: _________________________ Gender: ___________
Listed below are the criteria for Manual Billing System. Please rate each
criteria by checking the column that your perception.
5 – Excellent
4 – Very Satisfactory
3 – Satisfactory
2 – Fair
1 – Poor
5 4 3 2 1
Criteria
E VS S F P
1. Efficiency. The system performs properly.
2. Reliability. The system meets its requirements.
3. Security. The system is not accessible to unauthorized
users.
4. Accessibility. The system is easy to use and understand by
users.
5. Accuracy. The system gives correct response to the users.
6. Flexibility. The system works properly at all time.
7. User-friendliness. The system is easy to understand.
8. Design. The system is presentable to the users.
9. Usability. The system is important and is definitely useful
to the user.
Comments and Suggestions
Signature over Printed Name
7. 59
Evaluation Form for Developed Automated Billing System with Inquiry
System
Name: ___________________________ Date: _____________
Position: _________________________ Gender: ___________
Listed below are the criteria for Manual Billing System. Please rate each
criteria by checking the column that your perception.
5 – Excellent
4 – Very Satisfactory
3 – Satisfactory
2 – Fair
1 – Poor
5 4 3 2 1
Criteria
E VS S F P
1. Efficiency. The system performs properly.
2. Reliability. The system meets its requirements.
3. Security. The system is not accessible to unauthorized
users.
4. Accessibility. The system is easy to use and understand by
users.
5. Accuracy. The system gives correct response to the users.
6. Flexibility. The system works properly at all time.
7. User-friendliness. The system is easy to understand.
8. Design. The system is presentable to the users.
9. Usability. The system is important and is definitely useful
to the user.
Comments and Suggestions
Signature over Printed Name
9. 61
This is the homepage of the program which shows the
information about the system.
This is the form for building permit where the
transaction for establishment is being process.
10. 62
This page is for the form of cedula where the clients can
compute their salary to get the overall price of their cedula.
This form is for edit teller where only the administrator can
change and edit the user code and password of a teller.
11. 63
This page is for Inquiry to view the persons who had a
balance.
This is the homepage for the Inquiry System where the
clients can choose either inquiry or cedula.
12. 64
This is the login form of the system.
This is the main interface of the billing system where all the
transaction is being process and done.
14. 66
frmAcceptBuildingP.vb vbCrLf + "Change: " & change, vbInformation +
vbOKCancel, "Review")
Imports System If a = vbOK Then
Imports System.Data With frmReport
Imports system.Data.SqlClient .lblOr.Text = lblOr.Text
Imports CrystalDecisions.Shared End With
Imports CrystalDecisions.CrystalRe If lblId.Text = "13" Then
ports.Engine Call nature1()
Public Class frmAcceptP Call save()
Dim SQLcmd As New SqlCommand Call print()
Else
Dim Amount As String Call natures()
Dim cusname As String Call save()
Dim teller As String Call print()
Dim collection As String Me.Close()
Dim colDate As String End If
Dim totalAmount As Integer
Dim natureOfCol As String End If
Dim pay(7) As String End If
Dim nature(7) As String End Sub
Private Sub frmAcceptP_Load(ByVal sender
Private Sub Button2_Click(ByVal sender As As System.Object, ByVal e As
System.Object, ByVal e As System.EventArgs) System.EventArgs) Handles MyBase.Load
Handles btnCancel.Click
With frmMain If lblId.Text = "1" Then
.Enabled = True With frmBirthC
Me.Close() cusname = .txtCust.Text
End With teller = .lblName.Text
With frmBirthC Amount = .lblTotal.Text
.Close() lblOr.Text = .lblOr.Text
End With If Amount = 50 Then
End Sub natureOfCol = "Birth Certificate"
Private Sub btnPrint_Click(ByVal sender As Else
System.Object, ByVal e As System.EventArgs) natureOfCol = "Birth Certificate for
Handles btnPrint.Click travel"
Dim change As Integer End If
If Val(txtCash.Text) < Val(lblAmount.Text) collection = "15" 'Birth Certificate
Or txtCash.Text = "" Or Not End With
IsNumeric(txtCash.Text) Then lblAmount.Text = Amount
MsgBox("Insufficient cash. Please enter ElseIf lblId.Text = "2" Then
valid fund!", vbCritical + vbOKOnly, With frmBurialP
"Payment") cusname = .txtCust.Text
txtCash.Text = "" teller = .lblName.Text
txtCash.Focus() Amount = .lblTotal.Text
Else lblOr.Text = .lblOr.Text
change = Val(txtCash.Text) - natureOfCol = "Burial Permit"
Val(lblAmount.Text) collection = "23" 'Burial Permit
'Label3.Text = change + ".00" End With
Dim a As String lblAmount.Text = Amount
a = MsgBox("Please review the ElseIf lblId.Text = "3" Then
Information:" + vbCrLf + "Name: " + cusname + With frmMarriageC
vbCrLf + "Amount: " + Amount + vbCrLf + cusname = .txtCust.Text
teller = .lblName.Text
15. 67
Amount = .lblTotal.Text Amount = .lblTotal.Text
lblOr.Text = .lblOr.Text lblOr.Text = .lblOr.Text
natureOfCol = "Marriage Certificate" natureOfCol = "Tax Declaration"
collection = "24" 'Marriage Certificate collection = "18" 'Tax Declaration
End With End With
lblAmount.Text = Amount lblAmount.Text = Amount
ElseIf lblId.Text = "4" Then ElseIf lblId.Text = "9" Then
With frmMarriageL With frmTransferF
cusname = .txtCust.Text cusname = .txtCust.Text
teller = .lblName.Text teller = .lblName.Text
Amount = .lblTotal.Text Amount = .lblTotal.Text
lblOr.Text = .lblOr.Text lblOr.Text = .lblOr.Text
natureOfCol = "Marriage License" natureOfCol = "Transfer Fee"
collection = "26" 'Marriage License collection = "27" 'Transfer Fee
End With End With
lblAmount.Text = Amount lblAmount.Text = Amount
ElseIf lblId.Text = "5" Then ElseIf lblId.Text = "10" Then
With frmMayorsC With frmTransferT
If .lblTotal.Text = "Php 0.00" Then cusname = .txtCust.Text
.lblTotal.Text = "0.00" teller = .lblName.Text
End If Amount = .lblTotal.Text
cusname = .txtCust.Text lblOr.Text = .lblOr.Text
teller = .lblName.Text natureOfCol = "Transfer Tax"
Amount = .lblTotal.Text collection = "28" 'Transfer Tax
lblOr.Text = .lblOr.Text End With
natureOfCol = "Mayors Clearance" lblAmount.Text = Amount
collection = "20" ' ElseIf lblId.Text = "11" Then
End With With frmPoliceC
lblAmount.Text = Amount cusname = .txtCust.Text
ElseIf lblId.Text = "6" Then teller = .lblName.Text
With frmMedicalC Amount = .lblTotal.Text
cusname = .txtCust.Text lblOr.Text = .lblOr.Text
teller = .lblName.Text natureOfCol = "Police Clearance"
Amount = .lblTotal.Text collection = "17" 'Police Clearance
lblOr.Text = .lblOr.Text End With
natureOfCol = "Medical Certificate" lblAmount.Text = Amount
collection = "25" 'Medical Certificate ElseIf lblId.Text = "12" Then
End With With frmLocationalC
lblAmount.Text = Amount cusname = .txtCust.Text
ElseIf lblId.Text = "7" Then teller = .lblName.Text
With frmTaxC Amount = .lblTotal.Text
cusname = .txtCust.Text lblOr.Text = .lblOr.Text
teller = .lblName.Text natureOfCol = "Locational Clearance"
Amount = .lblTotal.Text collection = "22" 'Locational Clearance
lblOr.Text = .lblOr.Text End With
natureOfCol = "Tax Clearance" lblAmount.Text = Amount
collection = "21" 'Tax Clearance
End With ElseIf lblId.Text = "13" Then
lblAmount.Text = Amount With frmBusinessP
ElseIf lblId.Text = "8" Then cusname = .txtCust.Text
With frmTaxD teller = .lblName.Text
cusname = .txtCust.Text Amount = .lblTotal.Text
teller = .lblName.Text lblOr.Text = .lblOr.Text
16. 68
natureOfCol = "Building Permit" SQLcmd.Connection = conn
collection = "2" 'Building Permit SQLcmd.CommandText = "INSERT
'********* *********' INTO tblDaily
pay(0) = .txtPay1.Text (natureOfCol,colDate,colAmount,transOr,transT
pay(1) = .txtPay2.Text eller)" & _
pay(2) = .txtPay3.Text "VALUES ('" & collection & "','" &
pay(3) = .txtPay4.Text colDate & "','" & Amount & "','" & lblOr.Text &
pay(4) = .txtPay5.Text "','" & teller & "')"
pay(5) = .txtPay6.Text SQLcmd.ExecuteNonQuery()
pay(6) = .txtPay7.Text conn.Close()
pay(7) = .txtPay8.Text End If
'********** *********' Catch ex As Exception
nature(0) = "Mayors Permit" MsgBox(ex.Message)
nature(1) = "Sanitary Inspection Fee" End Try
nature(2) = "Police Clearance" Call ConnectDatabase()
nature(3) = "Fire Inspection Fee" Try
nature(4) = "Business Name Plate" If conn.State = ConnectionState.Open
nature(5) = "Engineering Inspection Then
Fee" SQLcmd.Connection = conn
nature(6) = "Garbage Fee" SQLcmd.CommandText = "INSERT
nature(7) = "Service Fee Health" INTO tblDaily
End With (natureOfCol,colDate,colAmount,transOr,transT
lblAmount.Text = Amount eller)" & _
End If "VALUES ('" & collection & "','" &
colDate & "','" & Amount & "','" & lblOr.Text &
End Sub "','" & teller & "')"
Public Sub natures() SQLcmd.ExecuteNonQuery()
colDate = Now.Date conn.Close()
Call ConnectDatabase() End If
Try Catch ex As Exception
If conn.State = ConnectionState.Open MsgBox(ex.Message)
Then End Try
SQLcmd.Connection = conn Call ConnectDatabase()
SQLcmd.CommandText = "INSERT Try
INTO tblDaily If conn.State = ConnectionState.Open
(natureOfCol,colDate,colAmount,transOr,transT Then
eller)" & _ SQLcmd.Connection = conn
"VALUES ('" & collection & "','" & SQLcmd.CommandText = "INSERT
colDate & "','" & Amount & "','" & lblOr.Text & INTO tblDaily
"','" & teller & "')" (natureOfCol,colDate,colAmount,transOr,transT
SQLcmd.ExecuteNonQuery() eller)" & _
conn.Close() "VALUES ('" & collection & "','" &
End If colDate & "','" & Amount & "','" & lblOr.Text &
Catch ex As Exception "','" & teller & "')"
MsgBox(ex.Message) SQLcmd.ExecuteNonQuery()
End Try conn.Close()
End Sub End If
Public Sub nature1() Catch ex As Exception
colDate = Now.Date MsgBox(ex.Message)
Call ConnectDatabase() End Try
Try Call ConnectDatabase()
If conn.State = ConnectionState.Open Try
Then
17. 69
If conn.State = ConnectionState.Open Try
Then If conn.State = ConnectionState.Open
SQLcmd.Connection = conn Then
SQLcmd.CommandText = "INSERT SQLcmd.Connection = conn
INTO tblDaily SQLcmd.CommandText = "INSERT
(natureOfCol,colDate,colAmount,transOr,transT INTO tblDaily
eller)" & _ (natureOfCol,colDate,colAmount,transOr,transT
"VALUES ('" & collection & "','" & eller)" & _
colDate & "','" & Amount & "','" & lblOr.Text & "VALUES ('" & collection & "','" &
"','" & teller & "')" colDate & "','" & Amount & "','" & lblOr.Text &
SQLcmd.ExecuteNonQuery() "','" & teller & "')"
conn.Close() SQLcmd.ExecuteNonQuery()
End If conn.Close()
Catch ex As Exception End If
MsgBox(ex.Message) Catch ex As Exception
End Try MsgBox(ex.Message)
Call ConnectDatabase() End Try
Try Call ConnectDatabase()
If conn.State = ConnectionState.Open Try
Then If conn.State = ConnectionState.Open
SQLcmd.Connection = conn Then
SQLcmd.CommandText = "INSERT SQLcmd.Connection = conn
INTO tblDaily SQLcmd.CommandText = "INSERT
(natureOfCol,colDate,colAmount,transOr,transT INTO tblDaily
eller)" & _ (natureOfCol,colDate,colAmount,transOr,transT
"VALUES ('" & collection & "','" & eller)" & _
colDate & "','" & Amount & "','" & lblOr.Text & "VALUES ('" & collection & "','" &
"','" & teller & "')" colDate & "','" & Amount & "','" & lblOr.Text &
SQLcmd.ExecuteNonQuery() "','" & teller & "')"
conn.Close() SQLcmd.ExecuteNonQuery()
End If conn.Close()
Catch ex As Exception End If
MsgBox(ex.Message) Catch ex As Exception
End Try MsgBox(ex.Message)
Call ConnectDatabase() End Try
Try End Sub
If conn.State = ConnectionState.Open
Then Public Sub save1()
SQLcmd.Connection = conn Dim amountInDigit As String
SQLcmd.CommandText = "INSERT Dim q As Integer
INTO tblDaily q = lblOr.Text + 1
(natureOfCol,colDate,colAmount,transOr,transT amountInDigit = NumberToString(Amount)
eller)" & _ Call ConnectDatabase()
"VALUES ('" & collection & "','" & Try
colDate & "','" & Amount & "','" & lblOr.Text & If conn.State = ConnectionState.Open
"','" & teller & "')" Then
SQLcmd.ExecuteNonQuery() SQLcmd.Connection = conn
conn.Close() SQLcmd.CommandText = "INSERT
End If INTO tblTempReceipt
Catch ex As Exception (orNumber,cusName,date,amountToPay,amount
MsgBox(ex.Message) ToPayDigit,payment,tellerName,natureOfCol)"
End Try &_
Call ConnectDatabase()
18. 70
"VALUES ('" & lblOr.Text & "','" & Call ConnectDatabase()
cusname & "','" & colDate & "','" & pay(0) & Try
"','" & amountInDigit & "','" & txtCash.Text & If conn.State = ConnectionState.Open
"','" & teller & "','" & nature(0) & "')" Then
Dim SQLRead As SqlDataReader = SQLcmd.Connection = conn
SQLcmd.ExecuteReader SQLcmd.CommandText = "INSERT
End If INTO tblTempReceipt
conn.Close() (orNumber,cusName,date,amountToPay,amount
Catch ex As Exception ToPayDigit,payment,tellerName,natureOfCol)"
MsgBox(ex.Message) &_
End Try "VALUES ('" & lblOr.Text & "','" &
Call ConnectDatabase() cusname & "','" & colDate & "','" & pay(3) &
Try "','" & amountInDigit & "','" & txtCash.Text &
If conn.State = ConnectionState.Open "','" & teller & "','" & nature(3) & "')"
Then Dim SQLRead As SqlDataReader =
SQLcmd.Connection = conn SQLcmd.ExecuteReader
SQLcmd.CommandText = "INSERT End If
INTO tblTempReceipt conn.Close()
(orNumber,cusName,date,amountToPay,amount Catch ex As Exception
ToPayDigit,payment,tellerName,natureOfCol)" MsgBox(ex.Message)
&_ End Try
"VALUES ('" & lblOr.Text & "','" & Call ConnectDatabase()
cusname & "','" & colDate & "','" & pay(1) & Try
"','" & amountInDigit & "','" & txtCash.Text & If conn.State = ConnectionState.Open
"','" & teller & "','" & nature(1) & "')" Then
Dim SQLRead As SqlDataReader = SQLcmd.Connection = conn
SQLcmd.ExecuteReader SQLcmd.CommandText = "INSERT
End If INTO tblTempReceipt
conn.Close() (orNumber,cusName,date,amountToPay,amount
Catch ex As Exception ToPayDigit,payment,tellerName,natureOfCol)"
MsgBox(ex.Message) &_
End Try "VALUES ('" & lblOr.Text & "','" &
Call ConnectDatabase() cusname & "','" & colDate & "','" & pay(4) &
Try "','" & amountInDigit & "','" & txtCash.Text &
If conn.State = ConnectionState.Open "','" & teller & "','" & nature(4) & "')"
Then Dim SQLRead As SqlDataReader =
SQLcmd.Connection = conn SQLcmd.ExecuteReader
SQLcmd.CommandText = "INSERT End If
INTO tblTempReceipt conn.Close()
(orNumber,cusName,date,amountToPay,amount Catch ex As Exception
ToPayDigit,payment,tellerName,natureOfCol)" MsgBox(ex.Message)
&_ End Try
"VALUES ('" & lblOr.Text & "','" & Call ConnectDatabase()
cusname & "','" & colDate & "','" & pay(2) & Try
"','" & amountInDigit & "','" & txtCash.Text & If conn.State = ConnectionState.Open
"','" & teller & "','" & nature(2) & "')" Then
Dim SQLRead As SqlDataReader = SQLcmd.Connection = conn
SQLcmd.ExecuteReader SQLcmd.CommandText = "INSERT
End If INTO tblTempReceipt
conn.Close() (orNumber,cusName,date,amountToPay,amount
Catch ex As Exception ToPayDigit,payment,tellerName,natureOfCol)"
MsgBox(ex.Message) &_
End Try
19. 71
"VALUES ('" & lblOr.Text & "','" & Call ConnectDatabase()
cusname & "','" & colDate & "','" & pay(5) & Try
"','" & amountInDigit & "','" & txtCash.Text & If conn.State = ConnectionState.Open
"','" & teller & "','" & nature(5) & "')" Then
Dim SQLRead As SqlDataReader = SQLcmd.Connection = conn
SQLcmd.ExecuteReader SQLcmd.CommandText = "UPDATE
End If tblReceipt set orFrom = '" & q & "'"
conn.Close() Dim SQLRead As SqlDataReader =
Catch ex As Exception SQLcmd.ExecuteReader
MsgBox(ex.Message) End If
End Try conn.Close()
Call ConnectDatabase() Catch ex As Exception
Try MsgBox(ex.Message)
If conn.State = ConnectionState.Open End Try
Then End Sub
SQLcmd.Connection = conn Public Sub save()
SQLcmd.CommandText = "INSERT Dim amountInDigit As String
INTO tblTempReceipt Dim q As Integer
(orNumber,cusName,date,amountToPay,amount q = lblOr.Text + 1
ToPayDigit,payment,tellerName,natureOfCol)" amountInDigit = NumberToString(Amount)
&_ Call ConnectDatabase()
"VALUES ('" & lblOr.Text & "','" & Try
cusname & "','" & colDate & "','" & pay(6) & If conn.State = ConnectionState.Open
"','" & amountInDigit & "','" & txtCash.Text & Then
"','" & teller & "','" & nature(6) & "')" SQLcmd.Connection = conn
Dim SQLRead As SqlDataReader = SQLcmd.CommandText = "INSERT
SQLcmd.ExecuteReader INTO tblTempReceipt
End If (orNumber,cusName,date,amountToPay,amount
conn.Close() ToPayDigit,payment,tellerName,natureOfCol)"
Catch ex As Exception &_
MsgBox(ex.Message) "VALUES ('" & lblOr.Text & "','" &
End Try cusname & "','" & colDate & "','" & Amount &
Call ConnectDatabase() "','" & amountInDigit & "','" & Amount & "','" &
Try teller & "','" & natureOfCol & "')"
If conn.State = ConnectionState.Open Dim SQLRead As SqlDataReader =
Then SQLcmd.ExecuteReader
SQLcmd.Connection = conn End If
SQLcmd.CommandText = "INSERT conn.Close()
INTO tblTempReceipt Catch ex As Exception
(orNumber,cusName,date,amountToPay,amount MsgBox(ex.Message)
ToPayDigit,payment,tellerName,natureOfCol)" End Try
&_ Call ConnectDatabase()
"VALUES ('" & lblOr.Text & "','" & Try
cusname & "','" & colDate & "','" & pay(7) & If conn.State = ConnectionState.Open
"','" & amountInDigit & "','" & txtCash.Text & Then
"','" & teller & "','" & nature(7) & "')" SQLcmd.Connection = conn
Dim SQLRead As SqlDataReader = SQLcmd.CommandText = "UPDATE
SQLcmd.ExecuteReader tblReceipt set orFrom = '" & q & "'"
End If Dim SQLRead As SqlDataReader =
conn.Close() SQLcmd.ExecuteReader
Catch ex As Exception End If
MsgBox(ex.Message) conn.Close()
End Try Catch ex As Exception
20. 72
MsgBox(ex.Message) If use_us_group_names Then
End Try groups = New String() {"", "thousand",
End Sub "million", "billion", "trillion", "quadrillion",
"quintillion", "sextillion", "septillion",
Sub print() "octillion", "nonillion", "decillion",
Call ConnectDatabase() "undecillion", "duodecillion", "tredecillion",
"quattuordecillion", "quindecillion",
Dim SQLcmd As String "sexdecillion", "septendecillion",
"octodecillion", "novemdecillion",
SQLcmd = "SELECT * FROM "vigintillion"}
tblTempReceipt WHERE orNumber = '" & Else
lblOr.Text & "'" groups = New String() {"", "thousand",
"million", "milliard", "billion", "1000 billion",
"trillion", "1000 trillion", "quadrillion", "1000
Dim SQLAdapter As New quadrillion", "quintillion", "1000 quintillion",
SqlDataAdapter(SQLcmd, conn) "sextillion", "1000 sextillion", "septillion", "1000
Dim SQLSet As New DataSet septillion", "octillion", "1000 octillion",
"nonillion", "1000 nonillion", "decillion", "1000
SQLAdapter.Fill(SQLSet, "tblTempReceipt decillion"}
WHERE orNumber = '" & lblOr.Text & "'") End If
Dim report As String = ' Clean the string a bit.
Application.StartupPath + "receipt.rpt" ' Remove "$", ",", leading zeros, and
' anything after a decimal point.
If Not IO.File.Exists(report) Then Const CURRENCY As String = "$"
Throw (New Exception("Unable to locate Const SEPARATOR As String = ","
report file:" & _ Const DECIMAL_POINT As String = "."
vbCrLf & report)) num_str = num_str.Replace(CURRENCY,
End If "").Replace(SEPARATOR, "")
num_str = num_str.TrimStart(New Char()
Dim document As New ReportDocument {"0"c})
Dim pos As Integer =
document.Load(report) num_str.IndexOf(DECIMAL_POINT)
If pos = 0 Then
document.SetDataSource(SQLSet.Tables("tblTe Return "zero"
mpReceipt WHERE orNumber = '" & lblOr.Text ElseIf pos > 0 Then
& "'")) num_str = num_str.Substring(0, pos - 1)
End If
With frmReport
.rptViewer.ShowRefreshButton = False ' See how many groups there will be.
.rptViewer.ShowCloseButton = False Dim num_groups As Integer =
.rptViewer.ShowGroupTreeButton = (num_str.Length + 2) 3
False
.rptViewer.ReportSource = document ' Pad so length is a multiple of 3.
.Show() num_str = num_str.PadLeft(num_groups *
End With 3, " "c)
End Sub
Private Function NumberToString(ByVal ' Process the groups, largest first.
num_str As String, Optional ByVal Dim result As String = ""
use_us_group_names As Boolean = True) As Dim group_num As Integer
String For group_num = num_groups - 1 To 0 Step
' Get the appropiate group names. -1
Dim groups() As String ' Get the next three digits.
21. 73
Dim group_str As String = End If
num_str.Substring(0, 3)
num_str = num_str.Substring(3) ' If num = 0, we have hundreds only.
Dim group_value As Integer = If num = 0 Then Return result.Trim()
CInt(group_str)
' See if the rest is less than 20.
' Convert the group into words. If num < 20 Then
If group_value > 0 Then ' Look up the correct name.
If group_num >= groups.Length Then result &= " " & one_to_nineteen(num)
result &= Else
GroupToWords(group_value) & _ ' Handle the tens digit.
" ?, " digit = num 10
Else num = num Mod 10
result &= result &= " " & multiples_of_ten(digit -
GroupToWords(group_value) & _ 2)
" " & groups(group_num) & ", "
End If ' Handle the final digit.
End If If num > 0 Then
Next group_num result &= " " & one_to_nineteen(num)
End If
' Remove the trailing ", ". End If
If result.EndsWith(", ") Then
result = result.Substring(0, result.Length Return result.Trim()
- 2) End Function
End If End Class
Return result.Trim() frmLogin.vb
End Function
Imports System
' Convert a number between 0 and 999 into Imports System.Data
words. Imports System.Data.SqlClient
Private Function GroupToWords(ByVal num Public Class frmLogin
As Integer) As String Dim SQLcmd As New SqlCommand
Static one_to_nineteen() As String = Dim a As Boolean
{"zero", "one", "two", "three", "four", "five", Dim status As String
"six", "seven", "eight", "nine", "ten", "eleven", Dim tellerName As String
"twelve", "thirteen", "fourteen", "fifteen", Private Sub frmLogin_Load(ByVal sender As
"sixteen", "seventeen", "eightteen", "nineteen"} System.Object, ByVal e As System.EventArgs)
Static multiples_of_ten() As String = Handles MyBase.Load
{"twenty", "thirty", "forty", "fifty", "sixty", End Sub
"seventy", "eighty", "ninety"} Public Sub acc()
Static note As Integer
' If the number is 0, return an empty string. Call ConnectDatabase()
If num = 0 Then Return "" Try
If conn.State = ConnectionState.Open
' Handle the hundreds digit. Then
Dim digit As Integer SQLcmd.Connection = conn
Dim result As String = "" SQLcmd.CommandText = "SELECT *
If num > 99 Then FROM tblTeller WHERE Usercode = '" &
digit = num 100 txtCode.Text & "' AND Password = '" &
num = num Mod 100 txtPass.Text & "'"
result = one_to_nineteen(digit) & " Dim SQLread As SqlDataReader =
hundred" SQLcmd.ExecuteReader
22. 74
While SQLread.Read()
With frmMain .Panel3.Visible = True
.tsName.Text =
SQLread("Name") .ToolStripButton5.Visible
.tsPosition.Text = = False
SQLread("Position") .Label2.Text = "Logout"
.tsPositionT.Visible = True
.tsUser.Visible = True .TransactionToolStripMenuItem1.Visible = True
End With
tellerName = SQLread("Name") .Window5ToolStripMenuItem.Visible = False
End While
If SQLread.HasRows = 0 Then .Window6ToolStripMenuItem.Visible = False
conn.Close()
MsgBox("Username/Password is .ORNumberToolStripMenuItem1.Visible = False
Incorrect!" + vbCrLf + vbCrLf + "You have " & .ToolStripButton6.Visible
4 - note & " more attempts before being" + = False
vbCrLf + "locked out of the system.", .ToolStripButton8.Visible
MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, = True
"Error")
Label7.Visible = True .AddTellerToolStripMenuItem1.Visible = False
note = note + 1
If note = 5 Then .LogoutToolStripMenuItem1.Visible = True
MsgBox("You have reached the .Button3.Visible = True
maximum trial!" & vbCrLf & vbCrLf & "The
System will be Locked and Terminated.",
MsgBoxStyle.Exclamation + .UtilitiesToolStripMenuItem1.Visible = True
MsgBoxStyle.OkOnly, "Security Access")
End .BackUpDatabaseToolStripMenuItem.Visible =
End If False
txtPass.Text = ""
txtCode.Text = "" .ORNumberToolStripMenuItem1.Visible = False
Label5.Text = 5 - note
txtCode.Focus() .AccountToolStripMenuItem.Visible = False
Else
Call verify() .AddTellerToolStripMenuItem2.Visible = False
If status = "Not Updated" Then
MsgBox("Your account is not yet .EditTellerToolStripMenuItem1.Visible = False
verified.", vbCritical + vbOKOnly)
frmMain.Show() .EditAccountToolStripMenuItem.Visible = True
frmMain.Enabled = False
frmUpdateT.Show()
frmUpdateT.BringToFront() .Window4ToolStripMenuItem.Visible = False
Me.Close()
Else .Window5ToolStripMenuItem.Visible = False
With frmMain
frmMain.Enabled = True .Window6ToolStripMenuItem.Visible = False
.tsReady2.Text = "Ready" .birthC.Visible = False
.Button3.ForeColor = .marriageC.Visible = False
Color.ForestGreen .marriageL.Visible = False
If lblPosition.Text = "Teller 1" .mayorC.Visible = False
Then .policeC.Visible = False
With frmMain .taxC.Visible = False
.taxD.Visible = False
25. 77
Dim SQLread As SqlDataReader =
.AddTellerToolStripMenuItem2.Visible = True SQLcmd.ExecuteReader
While SQLread.Read()
.EditTellerToolStripMenuItem1.Visible = True lblPosition.Text =
SQLread("Position")
CreateObject("SAPI.SpVoice").Speak("Welcom a = True
e, Administrator") End While
End With conn.Close()
End If End If
Catch ex As Exception
End With MsgBox(ex.Message)
Me.Close() End Try
note = 0 End Sub
End If Private Sub Button1_Click(ByVal sender As
End If System.Object, ByVal e As System.EventArgs)
End If Handles Button1.Click
conn.Close() Call acc()
Catch ex As Exception Dim a As String
MsgBox(ex.Message) a = Now.ToLongTimeString
End Try With frmMain
.Label10.Text = a
End Sub End With
Public Sub verify() End Sub
conn.Close() Private Sub Button2_Click(ByVal sender As
Call ConnectDatabase() System.Object, ByVal e As System.EventArgs)
Try Handles Button2.Click
If conn.State = ConnectionState.Open With frmMain
Then .Enabled = True
SQLcmd.Connection = conn Me.Close()
SQLcmd.CommandText = "SELECT * End With
FROM tblTeller where Usercode = '" & End Sub
txtCode.Text & "'"
Dim SQLread As SqlDataReader = Private Sub txtCode_LostFocus(ByVal sender
SQLcmd.ExecuteReader As Object, ByVal e As System.EventArgs)
While SQLread.Read() Handles txtCode.LostFocus
status = SQLread("status") Call position()
End While If txtCode.Text = "" Then
conn.Close() a = True
End If End If
Catch ex As Exception If a = False Then
MsgBox(ex.Message) MsgBox("Your a unathorized person !",
End Try vbCritical + vbOKOnly, "Login")
conn.Close() txtCode.Text = ""
End Sub txtCode.Focus()
Public Sub position() lblPosition.Text = ""
Call ConnectDatabase() End If
Try a = False
If conn.State = ConnectionState.Open End Sub
Then
SQLcmd.Connection = conn Private Sub Label7_Click(ByVal sender As
SQLcmd.CommandText = "SELECT * System.Object, ByVal e As System.EventArgs)
FROM tblTeller where Usercode = '" & Handles Label7.Click
txtCode.Text & "'" frmForgotP.Show()
26. 78
Me.Hide() If Val(txtFrom.Text) >= Val(txtTo.Text)
End Sub Then
MsgBox("Invalid action. OR To is less
End Class than OR From.", vbCritical + vbOKOnly,
"Invalid Action")
frmOR.vb txtFrom.Text = ""
txtTo.Text = ""
Imports System txtFrom.Focus()
Imports System.Data Else
Imports System.Data.SqlClient Call compare()
Public Class frmOR End If
Dim SQLcmd As New SqlCommand
Private Sub frmOR_Load(ByVal sender As End Sub
System.Object, ByVal e As System.EventArgs) Public Sub insert()
Handles MyBase.Load Call ConnectDatabase()
Try
End Sub If conn.State = ConnectionState.Open
Public Sub ORnumber() Then
conn.Close() SQLcmd.Connection = conn
Call ConnectDatabase() SQLcmd.CommandText = "INSERT
Try INTO tblReceipt (orFrom,orTo) VALUES ('" &
If conn.State = ConnectionState.Open txtFrom.Text & "','" & txtTo.Text & "')"
Then MsgBox("O.R Number have been
SQLcmd.Connection = conn added!", MsgBoxStyle.OkOnly +
SQLcmd.CommandText = "UPDATE MsgBoxStyle.Information, "O.R Number")
tblReceipt set [orFrom] = '" & txtFrom.Text & "', SQLcmd.ExecuteNonQuery()
[orTo] = '" & txtTo.Text & "' where orFrom2 = '" conn.Close()
& 1 & "'" End If
SQLcmd.ExecuteNonQuery() Catch ex As Exception
If Me.Text = "Edit OR" Then MsgBox(ex.Message)
MsgBox("O.R Number have been End Try
edited!", MsgBoxStyle.OkOnly + End Sub
MsgBoxStyle.Information, "O.R Number")
Else Private Sub Button2_Click(ByVal sender As
MsgBox("O.R Number have been System.Object, ByVal e As System.EventArgs)
added!", MsgBoxStyle.OkOnly + Handles Button2.Click
MsgBoxStyle.Information, "O.R Number") With frmMain
End If .Enabled = True
conn.Close() Me.Close()
End If End With
Catch ex As Exception End Sub
MsgBox(ex.Message) Public Sub compare()
End Try Call ConnectDatabase()
With frmMain Try
.Enabled = True If conn.State = ConnectionState.Open
Me.Close() Then
End With SQLcmd.Connection = conn
End Sub SQLcmd.CommandText = "SELECT *
FROM tblDaily where transOr = '" &
Private Sub Button1_Click(ByVal sender As txtFrom.Text & "'"
System.Object, ByVal e As System.EventArgs) Dim SQLread As SqlDataReader =
Handles Button1.Click SQLcmd.ExecuteReader
If SQLread.HasRows = 0 Then
27. 79
Call ORnumber() cmbTeller.Text & "','" & txtFull.Text & "','" &
Else "Not Updated" & "')"
MsgBox("Or number already exist.", Dim SQLRead As SqlDataReader =
vbCritical + vbOKOnly, "Or Number") SQLcmd.ExecuteReader
txtFrom.Text = "" MsgBox("Teller Added",
txtTo.Text = "" vbInformation + vbOKOnly, "Add Teller")
txtFrom.Focus() End If
End If conn.Close()
conn.Close() Catch ex As Exception
End If MsgBox(ex.Message)
Catch ex As Exception End Try
MsgBox(ex.Message) End Sub
End Try
End Sub Private Sub Button1_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs)
Private Sub txtFrom_TextChanged(ByVal Handles Button1.Click
sender As System.Object, ByVal e As If txtUsercode.Text = "" Or
System.EventArgs) Handles txtPassword.Text = "" Or cmbTeller.Text = "" Or
txtFrom.TextChanged txtFull.Text = "" Then
txtFrom.Focus() MsgBox("Please input necessary
End Sub inforamtion.", vbCritical + vbOKOnly, "Input")
End Class Else
Call add()
frmMain.Show()
frmAddt.vb frmMain.Enabled = True
Me.Close()
Imports System End If
Imports System.Data End Sub
Imports System.Data.SqlClient
Public Class frmAddT Private Sub Button2_Click(ByVal sender As
Dim SQLcmd As New SqlCommand System.Object, ByVal e As System.EventArgs)
Private Sub frmAddT_Load(ByVal sender As Handles Button2.Click
System.Object, ByVal e As System.EventArgs) frmMain.Show()
Handles MyBase.Load frmMain.Enabled = True
Me.Close()
End Sub
Private Sub add() End Sub
Call ConnectDatabase()
Try Private Sub Panel1_Paint(ByVal sender As
If conn.State = ConnectionState.Open System.Object, ByVal e As
Then System.Windows.Forms.PaintEventArgs)
SQLcmd.Connection = conn Handles Panel1.Paint
SQLcmd.CommandText = "INSERT
INTO tblTeller End Sub
(Usercode,Password,Position,Name,Status)" & _ End Class
"VALUES ('" & txtUsercode.Text &
"','" & txtPassword.Text & "','" &