WebUtil is a utility that enables Forms developers to interact with client machines from PL/SQL code. It provides functions for opening file dialogs, reading/writing files, executing OS commands, performing OLE automation, and obtaining client info. To use WebUtil, developers attach its library and subclass its object group, then can call functions after the form starts to interact with the client, such as opening a file dialog, reading an image into the form, or creating/opening a file on the client.
The document discusses the VIPER architecture, which aims to improve testability of iOS apps by separating concerns into distinct layers. It describes the main components of VIPER - View, Interactor, Presenter, Entity, and Router. The Interactor contains business logic, the Presenter prepares data for the View, and the Router handles navigation. By separating concerns, VIPER allows for easier testing and maintenance of large iOS codebases. It advocates designing the app as independent, reusable modules that conform to the single responsibility principle.
The document discusses client-side JavaScript and DOM (Document Object Model) manipulation. It covers the window object, DOM programming interface, DOM element types like Node and HTML Element. Methods for accessing elements like getElementById(), getElementsByName(), and querySelector() are explained. Working with element attributes, innerHTML, and traversing the DOM using childNodes and parentNode properties are also summarized. The presentation aims to explain DOM and how JavaScript can be used to get, change, add or remove HTML elements.
Inversion of control using dependency injection in Web APIs using Unity Conta...Akhil Mittal
My article will explain how we can make our Web API service architecture loosely coupled and more flexible. We already learnt that how we can create a RESTful service using Asp.net Web API and Entity framework in my last article. If you remember we ended up in a solution with a design flaw, we’ll try to overcome that flaw by resolving the dependencies of dependent components. For those who have not followed my previous article, they can learn by having the sample project attached as a test application from my first article.
Ctools is a suite of tools and APIs that make development easier in Drupal. It includes tools like Exportables for defining reusable configuration presets, the Ajax Responder for handling AJAX requests simply, the Form Wizard for building multi-step forms, the Modal Dialog for creating popup forms, and others. The tools aim to simplify common tasks and provide standardized approaches.
This document provides instructions for creating a simple tasklist application using ASP.NET MVC. It describes creating the controller, views, database, and model. The controller contains actions for listing, creating, and completing tasks. Views are created for displaying the task list and creating new tasks. A database with a Tasks table is set up using LINQ to SQL. Logic is added to the controller actions to retrieve and save tasks from the database. The task list view is modified to display tasks from the model.
Introduction to angular with a simple but complete projectJadson Santos
Angular is a framework for building client applications in HTML, CSS and TypeScript. It provides best practices like modularity, separation of concerns and testability for client-side development. The document discusses creating an Angular project, generating components, binding data, using directives, communicating with backend services, routing between components and building for production. Key steps include generating components, services and modules, binding data, calling REST APIs, defining routes and building the app.
The document discusses PHP frameworks and provides an introduction to CodeIgniter. It explains what frameworks are and discusses MVC architecture. It compares different PHP frameworks and provides details on CodeIgniter such as its lightweight nature, ease of use, and application flow. The document demonstrates how to install and configure CodeIgniter, build a basic application, and discusses controllers, models and views.
This document provides an overview of Angular, including:
- Angular is a JavaScript framework used to build client-side applications with HTML. Code is written in TypeScript which compiles to JavaScript.
- Angular enhances HTML with directives, data binding, and dependency injection. It follows an MVC architecture internally.
- Components are the basic building blocks of Angular applications. Modules contain components and services. Services contain reusable business logic.
- The document discusses Angular concepts like modules, components, data binding, services, routing and forms. It provides examples of creating a sample login/welcome application in Angular.
The document discusses the VIPER architecture, which aims to improve testability of iOS apps by separating concerns into distinct layers. It describes the main components of VIPER - View, Interactor, Presenter, Entity, and Router. The Interactor contains business logic, the Presenter prepares data for the View, and the Router handles navigation. By separating concerns, VIPER allows for easier testing and maintenance of large iOS codebases. It advocates designing the app as independent, reusable modules that conform to the single responsibility principle.
The document discusses client-side JavaScript and DOM (Document Object Model) manipulation. It covers the window object, DOM programming interface, DOM element types like Node and HTML Element. Methods for accessing elements like getElementById(), getElementsByName(), and querySelector() are explained. Working with element attributes, innerHTML, and traversing the DOM using childNodes and parentNode properties are also summarized. The presentation aims to explain DOM and how JavaScript can be used to get, change, add or remove HTML elements.
Inversion of control using dependency injection in Web APIs using Unity Conta...Akhil Mittal
My article will explain how we can make our Web API service architecture loosely coupled and more flexible. We already learnt that how we can create a RESTful service using Asp.net Web API and Entity framework in my last article. If you remember we ended up in a solution with a design flaw, we’ll try to overcome that flaw by resolving the dependencies of dependent components. For those who have not followed my previous article, they can learn by having the sample project attached as a test application from my first article.
Ctools is a suite of tools and APIs that make development easier in Drupal. It includes tools like Exportables for defining reusable configuration presets, the Ajax Responder for handling AJAX requests simply, the Form Wizard for building multi-step forms, the Modal Dialog for creating popup forms, and others. The tools aim to simplify common tasks and provide standardized approaches.
This document provides instructions for creating a simple tasklist application using ASP.NET MVC. It describes creating the controller, views, database, and model. The controller contains actions for listing, creating, and completing tasks. Views are created for displaying the task list and creating new tasks. A database with a Tasks table is set up using LINQ to SQL. Logic is added to the controller actions to retrieve and save tasks from the database. The task list view is modified to display tasks from the model.
Introduction to angular with a simple but complete projectJadson Santos
Angular is a framework for building client applications in HTML, CSS and TypeScript. It provides best practices like modularity, separation of concerns and testability for client-side development. The document discusses creating an Angular project, generating components, binding data, using directives, communicating with backend services, routing between components and building for production. Key steps include generating components, services and modules, binding data, calling REST APIs, defining routes and building the app.
The document discusses PHP frameworks and provides an introduction to CodeIgniter. It explains what frameworks are and discusses MVC architecture. It compares different PHP frameworks and provides details on CodeIgniter such as its lightweight nature, ease of use, and application flow. The document demonstrates how to install and configure CodeIgniter, build a basic application, and discusses controllers, models and views.
This document provides an overview of Angular, including:
- Angular is a JavaScript framework used to build client-side applications with HTML. Code is written in TypeScript which compiles to JavaScript.
- Angular enhances HTML with directives, data binding, and dependency injection. It follows an MVC architecture internally.
- Components are the basic building blocks of Angular applications. Modules contain components and services. Services contain reusable business logic.
- The document discusses Angular concepts like modules, components, data binding, services, routing and forms. It provides examples of creating a sample login/welcome application in Angular.
1. The document discusses adding React components to ASP.NET MVC applications using React JS.NET.
2. It explains how React JS.NET allows bootstrapping a React component tree from a C# view, allowing ASP.NET MVC apps to contain React component trees.
3. The document provides an overview of key aspects like how ReactDOM.Render() is called, using JSX files, fetching data from server-side MVC code, and rendering components on the server-side for performance.
The document describes an internship project building a web application using AngularJS for the client-side views, Express for the server, and Node.js. The application allows users to submit queries which are passed from Angular to Express to a commerce API, with responses returned to render dynamic views. The intern gained experience with asynchronous JavaScript, Angular, Express, Node, and related tools like Balsamiq and Git.
This document provides an overview of ASP.NET MVC frameworks and how to get started with ASP.NET MVC 4. It discusses how ASP.NET MVC supports the MVC pattern and test-driven development. It also describes how to install ASP.NET MVC 4, create a basic MVC 4 project with different templates, add controllers and views, and connect to a database using Entity Framework.
A tutorial about CodeIgniter. It's purpose is to help someone with no prior knowledge of frameworks, to understand it's basic principles and how it works.
A journey from MVC to VIPER is a try to leverage different application architectures (as well as some concepts on top of MVC) to build more clean and readable software in Cocoa. Most of the described techniques can be successfully used while dealing with legacy codebase.
This document discusses data binding in Angular, including the differences between HTML attributes and DOM properties, the three types of data binding (one way and two way), and examples of each type of binding. It explains that one way binding can update properties, classes, styles, attributes and listen to events, but not read values. Two way binding uses the NgModel directive to both display and update a data property when the view changes. The document provides examples of property, event, class, style and attribute binding and how Angular matches bindings to component properties and events.
Yii - Next level PHP Framework von Florian FackerMayflower GmbH
Einblicke in ein Aussenseiter-PHP-Framework, das mit etlichen Features den Grossen eine Nasenlänge voraus ist. Anhand von praktischen Beispielen wird gezeigt, wie schnell sich mit Yii ein Projekt realisieren lässt. Dem ganzen folgt noch eine Cookbook-Blog-Reihe.
The document discusses the Model-View-Controller (MVC) design pattern. MVC separates an application's logic into three main components: the model, the view, and the controller. The model manages the application's data and logic, the view displays the data to the user, and the controller interprets user input and updates the model. MVC improves separation of concerns and makes applications more modular, extensible, and testable. It is commonly used for web applications, where the server handles the model and controller logic while the client handles the view.
This document provides an introduction to web development. It discusses the basic model of web applications including the front end, request layer, and back end. It then covers front end development with languages like HTML, CSS, and JavaScript. Popular front end frameworks like Angular and React are also introduced. The document concludes with an overview of back end development, including web APIs, REST, and popular backend tools.
This document provides an introduction to ASP.NET MVC, covering the MVC pattern, controllers, actions, routing, views, models, and capturing user input with forms. It discusses key ASP.NET MVC concepts like separation of concerns, the default project structure, and common action filters. The document also provides exercises for readers to create a basic MVC application with a model, controller actions, and views that display and capture data. It concludes by outlining additional topics to be covered in part 2, such as HTML helpers, partial views, and unit testing.
The document lists 10 reasons to choose the Yii framework for web development. It discusses that Yii is an open source MVC framework begun in 2008 to address limitations in PRADO. Key benefits of Yii include being easy to install, using modern PHP features, high extensibility, support for testing, simplified security, shorter development time through code generation and reuse, optimized performance through caching, robust error handling, customizable themes, and flexible logging.
This document discusses moving existing websites with security issues to the ASP.NET MVC framework using Entity Framework. It provides an overview of MVC and EF, how to set them up in Visual Studio, and examples of using them to improve security by removing direct SQL queries and moving more logic to the server. Key benefits highlighted include built-in features for validation and preventing cross-site request forgery attacks. Examples demonstrate querying databases and validating models without writing direct SQL or adding additional code.
Dependency Injection Inversion Of Control And Unityrainynovember12
The document discusses dependency injection and inversion of control using the Unity framework. It provides an example of how the Unity container can be used to decouple classes and resolve their dependencies. It explains that classes should depend on abstractions rather than concrete implementations through interfaces. The Unity container allows registering types and resolving object graphs to inject dependencies. This approach prevents tight coupling between classes and reduces change impact if dependencies need to be replaced.
Angular 7 Firebase5 CRUD Operations with Reactive FormsDigamber Singh
This document discusses how to create Angular 7 Firebase5 CRUD operations using Reactive Forms. It involves setting up a student record management system where an admin can create, read, update and delete student records. The key steps include setting up an Angular project with Bootstrap and Firebase, creating CRUD services, generating components, setting up routing, and integrating modules like NGX Toastr for alerts.
This document discusses several key concepts in ASP.NET MVC including areas, HTML helpers, partial views, dependency injection, model validation, and asynchronous controller actions. It provides code examples for creating an area, partial view, unit tests, and using model attributes for validation. The document is intended to be part of an ASP.NET MVC training and covers important topics like routing, generating HTML, reusing views, testing, and asynchronous programming.
The document provides best practice guidelines for developing Angular applications from version 2 to 6. It covers topics such as file structure conventions, naming conventions, coding conventions, component guidelines, directives, services and more. The guidelines aim to promote consistency, readability and maintainability of Angular codebases.
Angular provides 3 options for view encapsulation:
1. Emulated (default) - styles are scoped to the component and attributes are added for specificity
2. Native - uses native shadow DOM for full encapsulation where supported
3. None - styles apply globally without encapsulation
The main advantage is fully encapsulated styles that don't clash, keeping CSS clean and organized. Angular emulates shadow DOM for wider browser support by default using attributes, but allows native encapsulation where possible.
Understanding router state in angular 7 passing data through angular router s...Katy Slemon
Understanding Router State in Angular 7: Check out this tutorial to explore the new Angular feature for passing data through Angular RouterState with a demo app
WebUtil is a utility that enables client-side functionality on Win32 clients. It consists of Java classes, Forms objects, and a PL/SQL library. WebUtil provides benefits such as only requiring PL/SQL coding knowledge, free download, and easy integration into Forms applications. To integrate WebUtil, a developer attaches the WebUtil library and subclasses the WebUtil object group. Then WebUtil functions can be used to interact with the client, such as opening file dialogs, reading/writing files, executing commands, and automating applications.
This document discusses implementing autocomplete functionality for a textbox using jQuery. It describes 3 walkthroughs of increasing complexity:
1. The simplest approach which demonstrates basic autocomplete functionality without data from a backend source.
2. An example that calls a web service asynchronously to get suggestion data from a database to populate the autocomplete.
3. An extension of the second example that displays more detailed suggestion items and only submits the selected value rather than the full object.
The document provides instructions on setting up the necessary jQuery and jQuery UI files, HTML markup, and code for each walkthrough.
1. The document discusses adding React components to ASP.NET MVC applications using React JS.NET.
2. It explains how React JS.NET allows bootstrapping a React component tree from a C# view, allowing ASP.NET MVC apps to contain React component trees.
3. The document provides an overview of key aspects like how ReactDOM.Render() is called, using JSX files, fetching data from server-side MVC code, and rendering components on the server-side for performance.
The document describes an internship project building a web application using AngularJS for the client-side views, Express for the server, and Node.js. The application allows users to submit queries which are passed from Angular to Express to a commerce API, with responses returned to render dynamic views. The intern gained experience with asynchronous JavaScript, Angular, Express, Node, and related tools like Balsamiq and Git.
This document provides an overview of ASP.NET MVC frameworks and how to get started with ASP.NET MVC 4. It discusses how ASP.NET MVC supports the MVC pattern and test-driven development. It also describes how to install ASP.NET MVC 4, create a basic MVC 4 project with different templates, add controllers and views, and connect to a database using Entity Framework.
A tutorial about CodeIgniter. It's purpose is to help someone with no prior knowledge of frameworks, to understand it's basic principles and how it works.
A journey from MVC to VIPER is a try to leverage different application architectures (as well as some concepts on top of MVC) to build more clean and readable software in Cocoa. Most of the described techniques can be successfully used while dealing with legacy codebase.
This document discusses data binding in Angular, including the differences between HTML attributes and DOM properties, the three types of data binding (one way and two way), and examples of each type of binding. It explains that one way binding can update properties, classes, styles, attributes and listen to events, but not read values. Two way binding uses the NgModel directive to both display and update a data property when the view changes. The document provides examples of property, event, class, style and attribute binding and how Angular matches bindings to component properties and events.
Yii - Next level PHP Framework von Florian FackerMayflower GmbH
Einblicke in ein Aussenseiter-PHP-Framework, das mit etlichen Features den Grossen eine Nasenlänge voraus ist. Anhand von praktischen Beispielen wird gezeigt, wie schnell sich mit Yii ein Projekt realisieren lässt. Dem ganzen folgt noch eine Cookbook-Blog-Reihe.
The document discusses the Model-View-Controller (MVC) design pattern. MVC separates an application's logic into three main components: the model, the view, and the controller. The model manages the application's data and logic, the view displays the data to the user, and the controller interprets user input and updates the model. MVC improves separation of concerns and makes applications more modular, extensible, and testable. It is commonly used for web applications, where the server handles the model and controller logic while the client handles the view.
This document provides an introduction to web development. It discusses the basic model of web applications including the front end, request layer, and back end. It then covers front end development with languages like HTML, CSS, and JavaScript. Popular front end frameworks like Angular and React are also introduced. The document concludes with an overview of back end development, including web APIs, REST, and popular backend tools.
This document provides an introduction to ASP.NET MVC, covering the MVC pattern, controllers, actions, routing, views, models, and capturing user input with forms. It discusses key ASP.NET MVC concepts like separation of concerns, the default project structure, and common action filters. The document also provides exercises for readers to create a basic MVC application with a model, controller actions, and views that display and capture data. It concludes by outlining additional topics to be covered in part 2, such as HTML helpers, partial views, and unit testing.
The document lists 10 reasons to choose the Yii framework for web development. It discusses that Yii is an open source MVC framework begun in 2008 to address limitations in PRADO. Key benefits of Yii include being easy to install, using modern PHP features, high extensibility, support for testing, simplified security, shorter development time through code generation and reuse, optimized performance through caching, robust error handling, customizable themes, and flexible logging.
This document discusses moving existing websites with security issues to the ASP.NET MVC framework using Entity Framework. It provides an overview of MVC and EF, how to set them up in Visual Studio, and examples of using them to improve security by removing direct SQL queries and moving more logic to the server. Key benefits highlighted include built-in features for validation and preventing cross-site request forgery attacks. Examples demonstrate querying databases and validating models without writing direct SQL or adding additional code.
Dependency Injection Inversion Of Control And Unityrainynovember12
The document discusses dependency injection and inversion of control using the Unity framework. It provides an example of how the Unity container can be used to decouple classes and resolve their dependencies. It explains that classes should depend on abstractions rather than concrete implementations through interfaces. The Unity container allows registering types and resolving object graphs to inject dependencies. This approach prevents tight coupling between classes and reduces change impact if dependencies need to be replaced.
Angular 7 Firebase5 CRUD Operations with Reactive FormsDigamber Singh
This document discusses how to create Angular 7 Firebase5 CRUD operations using Reactive Forms. It involves setting up a student record management system where an admin can create, read, update and delete student records. The key steps include setting up an Angular project with Bootstrap and Firebase, creating CRUD services, generating components, setting up routing, and integrating modules like NGX Toastr for alerts.
This document discusses several key concepts in ASP.NET MVC including areas, HTML helpers, partial views, dependency injection, model validation, and asynchronous controller actions. It provides code examples for creating an area, partial view, unit tests, and using model attributes for validation. The document is intended to be part of an ASP.NET MVC training and covers important topics like routing, generating HTML, reusing views, testing, and asynchronous programming.
The document provides best practice guidelines for developing Angular applications from version 2 to 6. It covers topics such as file structure conventions, naming conventions, coding conventions, component guidelines, directives, services and more. The guidelines aim to promote consistency, readability and maintainability of Angular codebases.
Angular provides 3 options for view encapsulation:
1. Emulated (default) - styles are scoped to the component and attributes are added for specificity
2. Native - uses native shadow DOM for full encapsulation where supported
3. None - styles apply globally without encapsulation
The main advantage is fully encapsulated styles that don't clash, keeping CSS clean and organized. Angular emulates shadow DOM for wider browser support by default using attributes, but allows native encapsulation where possible.
Understanding router state in angular 7 passing data through angular router s...Katy Slemon
Understanding Router State in Angular 7: Check out this tutorial to explore the new Angular feature for passing data through Angular RouterState with a demo app
WebUtil is a utility that enables client-side functionality on Win32 clients. It consists of Java classes, Forms objects, and a PL/SQL library. WebUtil provides benefits such as only requiring PL/SQL coding knowledge, free download, and easy integration into Forms applications. To integrate WebUtil, a developer attaches the WebUtil library and subclasses the WebUtil object group. Then WebUtil functions can be used to interact with the client, such as opening file dialogs, reading/writing files, executing commands, and automating applications.
This document discusses implementing autocomplete functionality for a textbox using jQuery. It describes 3 walkthroughs of increasing complexity:
1. The simplest approach which demonstrates basic autocomplete functionality without data from a backend source.
2. An example that calls a web service asynchronously to get suggestion data from a database to populate the autocomplete.
3. An extension of the second example that displays more detailed suggestion items and only submits the selected value rather than the full object.
The document provides instructions on setting up the necessary jQuery and jQuery UI files, HTML markup, and code for each walkthrough.
The document discusses the Yii PHP framework. It provides an overview of Yii's fundamentals including its use of the MVC pattern, entry scripts, debug mode, applications, controllers, actions, filters, models, views, layouts, and widgets. It also summarizes how to create a basic Yii application, the code generation tools, and some key features such as database access, forms/validation, authentication, caching, and automatic code generation.
This paper’s aim is to point out the RAD ( Rapid application development) elements present in the Microsoft’s MVC 3 and WCF 4.0 using Microsoft Visual Studio 2010. It will describe why creating a new web application using MVC 3 and WCF 4.0 is a easy and fast and also present simple ways to develop such applications.
This document describes creating an open blog feature for a wiki application built with PHP. An open blog allows any user to publicly post and discuss topics. The tutorial will build out the necessary database table and basic blog features. It assumes the reader has completed the previous four tutorials in the series on building an interactive wiki with PHP.
This document describes creating an open blog feature for a wiki application built with PHP. An open blog allows any user to publicly post and discuss topics. It outlines designing the blog database table, basic features like posting and commenting, and integrating the blog into the existing wiki application. The tutorial assumes completion of previous parts that implemented the core wiki, file uploads, user permissions, and task management.
This document describes how to rapidly develop a web application using ASP.NET MVC 3 in Microsoft Visual Studio 2010. It outlines how to create a new project, add models, contexts, controllers with CRUD functionality, and use HTML helpers and dynamic templates to simplify development. MVC 3 enables full control over HTML while separating concerns, and allows both basic and complex applications to be built quickly through its RAD elements integrated into Visual Studio.
Components are the most basic UI building block of an Angular app. An Angular app contains a tree of Angular components.
Angular components are a subset of directives, always associated with a template. Unlike other directives, only one component can be instantiated per an element in a template.
A component must belong to an NgModule in order for it to be available to another component or application. To make it a member of an NgModule, list it in the declarations field of the NgModule metadata.
This document discusses building rich web applications using ASP.NET MVC 2. It includes 4 exercises:
1. Adding metadata attributes to model entities to help render them in views. This includes attributes like DisplayName and DataType.
2. Modifying markup in a view to make use of new strongly-typed HTML helpers like LabelFor and DisplayFor.
3. Creating a metadata class to store attributes for rendering an activity entity, including using the MetadataType attribute.
4. Learning how to use templates in ASP.NET MVC 2 to help render model properties, including creating a template for the activity rating property.
The document introduces ASP.NET Identity, which is Microsoft's new platform for managing users in ASP.NET applications. It has replaced the older ASP.NET Membership platform. The document discusses setting up an ASP.NET Identity implementation in an example project, including installing NuGet packages, defining a database context class, and creating a basic user management interface. It also provides an overview of how ASP.NET Identity uses OWIN/Katana to provide services to web applications in a more modular way compared to the previous ASP.NET Membership system.
This document summarizes 5 .NET projects completed by Darian Lowe focused on developing different aspects of a library management system. Project 1 involved learning core .NET concepts. Projects 2-4 involved developing frontend, backend, and web-based versions of the system. Project 5 converted the system into a web service using WSE 3.0 and certificate authentication. The goals were to learn .NET and build out the full system across different tiers and platforms.
This document describes how to implement the Model View Presenter (MVP) pattern in ASP.NET web forms. It discusses MVP as a user interface pattern that separates concerns and increases testability. It then provides step-by-step instructions to create a simple "Hello World" MVP application with a model, view, and presenter. The model builds output strings, the view contains UI elements, and the presenter joins them by passing data between the model and view.
Get things done with Yii - quickly build webapplicationsGiuliano Iacobelli
Lesson teached at Università di Roma Tre - Software Engineering course.
Web is plenty of amazing tools used daily by millions of people. A good idea can turn to be a highly profitable business if well executed. Yii framework is an ideal tool to build in short time an MVP of your product to start as soon as possible to find your market fit. Here follows some infos about the framework and steps on how to build a simple blog over Yii.
Rails Plugins - Linux For You, March 2011 IssueSagar Arlekar
'Linux For You' article by http://foodlets.in founders Govind Naroji and Sagar Arlekar.
This is a tutorial on will_paginate (pagination), authlogic + omniauth (authentication) and paperclip (file attachments) plugins.
Creating, debugging and deploying extension packages for Microsoft Visual Stu...PVS-Studio
This article contains the overview of several different methods for extending Visual Studio IDE. The creation, debugging, registration and end-user deployment of Visual Studio extension packages will be explained in detail.
CyberLab Training Division :
ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites. It allows you to use a full featured programming language such as C# or VB.NET to build web applications easily.
This tutorial covers all the basic elements of ASP.NET that a beginner would require to get started.
Audience
This tutorial has been prepared for the beginners to help them understand basic ASP.NET programming. After completing this tutorial you will find yourself at a moderate level of expertise in ASP.NET programming from where you can take yourself to next levels.
Prerequisites
Before proceeding with this tutorial, you should have a basic understanding of .NET programming language. As we are going to develop web-based applications using ASP.NET web application framework, it will be good if you have an understanding of other web technologies such as HTML, CSS, AJAX. etc
ASP.NET supports three different development models:
Web Pages, MVC (Model View Controller), and Web Forms.
For More Details.
Visit: http://www.cyberlabzone.com
This document provides instructions for implementing a simple web service using Eclipse. It begins with background on web services and their components. It then discusses the top-down and bottom-up approaches to web service development. The document walks through setting up Eclipse with the necessary plugins. It provides step-by-step instructions to create a project, write the service logic, generate the web service and client, test the service, and use the client. It includes an introduction, background sections on web services and Eclipse setup, and detailed steps for creating a "Hello" web service that returns a greeting message.
Step by step guide for creating wordpress pluginMainak Goswami
This document provides a step-by-step guide for creating a simple WordPress plugin called "Simple Stylish Tables" that allows users to style HTML tables. The steps include: 1) Creating a plugin directory and main PHP file, 2) Adding CSS styling in a stylesheet, 3) Adding header metadata, 4) Hooking the plugin into WordPress using actions, 5) Registering and enqueuing the stylesheet, and 6) Installing and using the plugin to style tables with a custom class.
This document discusses creating an MVC application from scratch using LINQ to SQL to perform CRUD operations on a database. It covers:
1. Creating an empty MVC project and adding controllers, views and models
2. Creating a sample database and using LINQ to SQL for communication between the MVC app and database
3. Performing CRUD operations in the MVC app by querying the database and passing data between controllers and views
XML is a markup language that allows users to define their own tags and structure for documents. It separates content from formatting and is extensible, platform-independent, and human-readable. Well-formed XML documents follow syntax rules like having matching open and close tags and properly nested elements. Valid XML documents also comply with constraints defined in their associated DTD. Common XML components include elements, attributes, namespaces, comments, and CDATA sections.
This document provides an overview of XML (Extensible Markup Language) including:
- The basic structure and components of an XML document including elements, attributes, entities, and advanced components.
- An example well-commented XML document.
- The basic rules for creating a well-formed XML document including being case sensitive, requiring start and end tags, proper nesting, and more.
- Common errors in element naming and how to avoid them.
- How to walk through modifying an example XML document to add new elements and ensure it remains well-formed.
XML (Extensible Markup Language) allows users to define their own customized markup languages to structure data. It was created as a simplified version of SGML to make it usable on the web. XML is important because it removes constraints of HTML and allows for richer content than HTML alone. XML will enable easier exchange of data between businesses and applications.
XML is a markup language that allows users to define their own tags and structure for documents. It separates content from formatting and is extensible, platform-independent, and human-readable. Well-formed XML documents follow syntax rules like having matching open and close tags and properly nested elements. Valid XML documents also comply with constraints defined in their associated DTD. Common XML components include elements, attributes, namespaces, comments, and CDATA sections.
This document provides an overview of XML (Extensible Markup Language) including:
- The basic structure and components of an XML document including elements, attributes, entities, and advanced components.
- An example well-commented XML document.
- The basic rules for creating a well-formed XML document including being case sensitive, requiring start and end tags, proper nesting, and more.
- Common errors in element naming and how to avoid them.
- How to add new elements and attributes to an example XML document to ensure it remains well-formed.
XML stands for Extensible Markup Language and is used to mark up data so it can be processed by computers, whereas HTML is used to mark up text to be displayed for users. Both XML and HTML use elements enclosed in tags, attributes, and entities, but XML only describes content while HTML describes both structure and appearance. XML allows users to define their own tags, and is strictly structured, making it suitable for data processing by computers.
This document provides an overview of XML, including its basic structure and components. XML documents use elements to structure and tag content. Elements must be properly nested within a single root element and can have attributes. The relationships between these elements form a tree structure. XML documents also support comments, processing instructions, and character encoding. CSS and XSLT can be used to display and transform XML for web users. While databases are better for structured data, XML is well suited for loosely structured or large records.
The document provides an introduction to shell scripting basics in UNIX/Linux. It discusses what a shell and shell script are, introduces the popular bash shell, and covers running commands, variables, logic, and other shell scripting concepts. The key points covered include:
- A shell is a program that takes commands and runs other programs. Popular shells include bash, csh, tcsh, and ksh.
- A shell script is a text file containing shell commands that is executable. Creating and running a simple "Hello world" script is demonstrated.
- Running commands, pipes, redirection, variables, logic, and flow control like if/else, for loops are explained.
- Useful bash
This document provides an introduction and overview of the Unix operating system. It covers topics such as getting help, the file system, the shell, network security, email clients, text editors, input/output redirection, printing, process management, and the X window system. The document is intended to help new Unix users understand basic Unix concepts and commands.
Linux is an open source operating system created by Linus Torvalds in 1991. It uses a Linux kernel and includes many common Unix tools. Linux is free to use and modify due to its open source licensing. It runs on many hardware platforms and is growing in popularity for servers, desktops, and embedded systems due to its low cost, stability, and security. Users can download Linux from distributions like Red Hat which package the Linux kernel with additional software and support.
After completing this section, students should be able to log into the Linux system, understand and manipulate the UNIX file system, describe the role of the shell, use basic file commands like cd, ls, cp, and rm, use standard input/output and piping, and understand the UNIX philosophy. The document provides an introduction to UNIX operating systems, shells, file systems, basic commands, and input/output redirection.
This document provides an overview of the C programming language, including its history, characteristics, and syntax. C was developed in the 1970s alongside Unix and became widely used for system programming. It allows for close interaction with the operating system and hardware. The document walks through a simple "Hello World" program to demonstrate C's syntax, including preprocessing, compilation, linking, and execution. It also provides a more complex guessing game example to illustrate additional C language features like variables, operators, conditionals, and loops.
This document provides an introduction to the C programming language. It discusses key concepts like functions, variables, data types, memory, scopes, expressions, operators, control flow with if/else statements and loops. It also explains how passing arguments by value means functions cannot directly modify their parameters, but passing addresses allows modifying variables in the calling scope. Overall it serves as a helpful primer on basic C syntax and programming concepts for newcomers to the language.
This document provides an overview of introductory concepts in C programming, including simple programs to print text and perform arithmetic. It covers basic syntax like comments, functions, variables, data types, operators, input/output, and conditional statements. Memory concepts are introduced, as well as the preprocessor, standard libraries, and control flow structures like if/else. Examples are provided to demonstrate printing text, taking user input, performing calculations, and making decisions based on relational comparisons.
This document provides an introduction to C programming over 13 pages. It covers the purpose and schedule of the lectures, differences between C and Java, C program structure, keywords, variables, data types, and more. The main points are that the lectures will provide a crash course in C with an emphasis on differences from Java, cover practical examples and topics related to C programming, and include history, language overview, pointers, memory management, compiling and debugging.
This document provides an introduction to programming in C. It begins by discussing computers, hardware, software, data, and information processing. It then discusses what programming is and how to approach solving problems through programming. The document outlines the major components of a C program and provides a first example program. It also covers key C programming concepts like variables, data types, expressions, control flow, functions, pointers, arrays, strings, structures, files and memory allocation. The document is intended to introduce readers to programming in C from a high level.
The document provides an overview of the C programming language. It begins with a brief history of C and how it evolved from the B programming language to support UNIX. It describes C as a systems programming language that is close to hardware but with higher-level constructs than assembly. The rest of the document outlines key C language concepts like data types, variables, operators, functions, and control structures. It provides examples of how to use basic programming elements like if/else statements and switch statements.
This document contains repeated text about printing or viewing notes pages for a preface rather than slides. It provides instructions to print or view notes pages for a preface section eight separate times without any other notable information.
This document provides an overview and objectives for a course on Oracle database administration. It covers topics such as controlling user access, managing schema objects, manipulating large data sets, generating reports, managing data in different time zones, retrieving data using subqueries, hierarchical retrieval, and regular expression support. Each chapter provides learning objectives and exercises for students to reinforce the concepts covered.
Regular expressions can be used in SQL to search, match, and replace strings. Key regular expression functions include REGEXP_INSTR, REGEXP_SUBSTR, and REGEXP_REPLACE. Meta characters like *, +, and [] are used to define patterns to match. For example, 'a+' would match one or more occurrences of 'a' in a string.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxSitimaJohn
Ocean Lotus cyber threat actors represent a sophisticated, persistent, and politically motivated group that poses a significant risk to organizations and individuals in the Southeast Asian region. Their continuous evolution and adaptability underscore the need for robust cybersecurity measures and international cooperation to identify and mitigate the threats posed by such advanced persistent threat groups.
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
OpenID AuthZEN Interop Read Out - AuthorizationDavid Brossard
During Identiverse 2024 and EIC 2024, members of the OpenID AuthZEN WG got together and demoed their authorization endpoints conforming to the AuthZEN API
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
12. Integrating WebUtil into a Form Object Library Object group Alert Items Canvas Window Step 2: Subclass the WEBUTIL object group.
13. When to Use WebUtil Functionality Pre-Form When-New-Form-Instance When-New-Block-Instance (first block) Form starts JavaBeans are instantiated Any trigger after form starts and while form is running
14.
15. Example: Opening a File Dialog on the Client DECLARE v_file VARCHAR2(250):= CLIENT_GET_FILE_NAME('','', 'Gif Files|*.gif|JPEG Files|*.jpg|', 'Select a photo to upload',open_file,TRUE);
16. Example: Reading an Image File into Forms from the Client DECLARE v_file VARCHAR2(250):= CLIENT_GET_FILE_NAME('','', 'Gif Files|*.gif|JPEG Files|*.jpg|', 'Select a photo to upload',open_file,TRUE); it_image_id ITEM := FIND_ITEM ('employee_photos.photo'); BEGIN CLIENT_IMAGE.READ_IMAGE_FILE(v_file,'',it_image_id); END;
22. Example: Obtaining Environment Information about the Client CLIENT_TOOL_ENV.GETVAR(:control.env_var, :control.env_value);
23.
24.
25.
26.
Editor's Notes
Introduction Overview Forms built-in subprograms are called on the middle-tier application server. However, there are times when you want to be able to interact with the client machine. You can do so with JavaBeans and PJCs, but there is a utility called WebUtil that includes much prewritten functionality for client interaction. This lesson shows you how to use WebUtil to interface with the client machine.
WebUtil Overview Forms built-ins typically are executed on the application server machine. Some Forms built-ins interact with the machine to create or read a file, read an image file, or execute operating system commands. Although in some cases it is desirable to execute such built-ins on the application server machine, there is often a need to perform such functionality on the client. To do this you can use a JavaBean or PJC, but that requires that you either write or locate prewritten components and integrate each into Forms applications. WebUtil is a utility that enables you to easily provide client-side functionality. It consists of a set of Java classes, Forms objects, and a PL/SQL API that enables you to execute the many Java functions of WebUtil without knowing Java. WebUtil must be installed and configured separately from Oracle Developer Suite 10 g . For installation and configuration instructions and much other information about WebUtil, see the WebUtil page on OTN: http://otn.oracle.com/products/forms/htdocs/webutil/webutil.htm Note: The client machine must be a Windows 32-bit platform, although the middle-tier server on which WebUtil is installed can be any platform on which Forms Services is supported.
Benefits of the WebUtil Utility Why Use WebUtil? Any Forms developer can use WebUtil to carry out complex tasks on client browser machines by simply coding PL/SQL. WebUtil is available as a free download from OTN, and is planned to be included in a patch set for Forms 10 g . It is very easy to integrate WebUtil into your Forms applications using its object group and PL/SQL library, and you can easily extend it by adding your own custom functionality while leveraging its basic structure. You can use WebUtil to perform a multitude of tasks, enabling you to: Read and write text files on the client machine File transfer between the client, application server, and database Read client-side variables Manipulate client-side files Integrate with C code on the client Obtain information about the client Use a file selection dialog box on the client Run operating system commands on the client machine and call back into Forms Integrate with the browser, such as displaying messages to the browser window Perform OLE automation, such as using Word and Excel, on the client Read and write client side images
Benefits of the WebUtil Utility (continued) What Functionality Is Available with WebUtil? There is a wealth of functionality available in the utility, including the following: Client-server parity APIs that enable you to retrieve a file name from the client, read or write an image to or from the client, get information about the client machine, or perform HOST and TEXT_IO commands and OLE automation on the client (without the WebUtil functions, these built-ins execute on the application server machine.) Client-server added value functions (ported from d2kwutil, a client-server package) : CREATE_REGISTRY_KEY and DELETE_REGISTRY_KEY GET_COMPUTER_NAME GET_NET_CONNECTION GET_TEMP_DIRECTORY , GET_WINDOWS_DIRECTORY , and GET_WORKING_DIRECTORY GET_WINDOWS_USERNAME READ_INI_FILE and WRITE_INI_FILE READ_REGISTRY, WRITE_REGISTRY, and WRITE_REGISTRYEX Note: Some of these may duplicate other WebUtil functions, but are provided as an easy way to migrate code that uses d2kwutil. Public functions: The core of WebUtil is a set of packages, each of which provides an API to implement certain functionality. WebUtil_ClientInfo Package: Contains the following functions to obtain information about the client machine: Instructor Note The many functions of WebUtil are listed here just to give students an idea of the capability of the utility. Do not cover them in detail. The client parity APIs are covered in more detail later in this lesson.
Benefits of the WebUtil Utility (continued) WebUtil_C_API Package: Contains the following functions to call into C libraries on the client:
Benefits of the WebUtil Utility (continued) WebUtil_File Package: Contains a new type called FILE_LIST , which is a PL/SQL table used to pass back multiple file names; also contains the following APIs to manipulate files and directories on the client and to display file selection dialog boxes:
Benefits of the WebUtil Utility (continued) WebUtil_File_Transfer Package: The WebUtil_File_Transfer package contains APIs to transfer files to and from the client browser machine and to display a progress bar as the transfer occurs. The following APIs are included in the WebUtil_File_Transfer package: WebUtil_Session Package: Provides a way to react to an interruption of the Forms session by defining a URL to which the user is redirected if the session ends crashes; contains the following:
Benefits of the WebUtil Utility (continued) WebUtil_Host Package: Contains routines to execute commands on the client machine. Includes two types: PROCESS_ID to hold a reference to a client-side process, and OUTPUT_ARRAY , a PL/SQL table which holds the VARCHAR2 output from a client-side command. The WebUtil_Host package also contains the following functions:
Benefits of the WebUtil Utility (continued) WebUtil_Core Package: Contains mostly private functions, but you can call the following functions: Utility functions: The following functions are not related to client integration, but they can be useful: Internal APIs that should not be called directly For more information about WebUtil, including a sample form that showcases its functionality, see OTN at: http://otn.oracle.com/products/forms/htdocs/webutil/webutil.htm
Integrating WebUtil into a Form Step 1: Attaching the WebUtil Library To use the functions of WebUtil in a Forms application, you first must attach the webutil.pll library to any module that will use the WebUtil PL/SQL API. Instructor Note Demonstration: In Forms Builder, open the form WU_TEST.fmb (the sample form from OTN) from the demo directory. Show students that the WEBUTIL library is attached to the form. Leave the form open for additional demonstrations.
Integrating WebUtil into a Form (continued) Step 2: Subclassing WebUtil Forms Objects Part of the WebUtil utility is a set of Forms objects contained in the webutil.olb . This object library contains an object group called WebUtil that you can subclass into your form. You must ensure that WebUtil is the last block in the Object Navigator. If you subclass the WebUtil object group into an empty form, you can see that it contains the following objects: A generic alert to display WebUtil error messages A data block with items, including a button and several bean area items to implement the JavaBeans (the bean area items are hidden because they do not provide a visual component on the form) A canvas to contain the items A window to display the canvas Instructor Note Demonstration: In the WU_TEST form, point out to students the above objects in the Object Navigator. Leave the form open for additional demonstrations.
When to Use WebUtil Functionality After the WebUtil library has been attached to your form, you can start to add calls to the various PL/SQL APIs defined by the utility. However, there is an important restriction in the use of WebUtil functions—WebUtil can communicate with the client only after the Form has instantiated the WebUtil JavaBeans. This means that you cannot call WebUtil functions before the user interface is rendered, so you should not use WebUtil functionality in triggers such as Pre-Form , When-New-Form-Instance , and When-New-Block-Instance for the first block in the form. In the case of the When-New-Form-Instance trigger it is possible, however, to call WebUtil functions after a call to the SYNCHRONIZE built-in has been issued, because this ensures that the user interface is rendered. Further, you cannot call WebUtil functions after the user interface has been destroyed. For example, you should not use a WebUtil call in a Post-Form trigger.
Interacting with the Client As previously mentioned, Forms built-ins work on the application server. For the most common Forms built-ins that you would want to use on the client, rather than on the application server, you can add a prefix to use the WebUtil equivalent. These client-server parity APIs make it easy to provide similar functionality in applications that were written for client-server deployment by preceding those built-ins with “ CLIENT_ ” or “ CLIENT_IMAGE. ”. Although this makes it easy to upgrade such applications, other WebUtil commands may provide similar, but better, functionality. The client-server parity APIs include the following: CLIENT_HOST CLIENT_GET_FILE_NAME You can use READ_IMAGE_FILE on the client by calling the WebUtil equivalent contained in a package: CLIENT_IMAGE.READ_IMAGE_FILE . In addition, there are certain Forms packages that you can use on the client with WebUtil: CLIENT_OLE2 CLIENT_TEXT_IO CLIENT_TOOL_ENV
Example: Opening a File Dialog on the Client To open a file dialog box on the client for selecting a file, you can use: CLIENT_GET_FILE_NAME ( DIRECTORY_NAME IN VARCHAR2, FILE_NAME IN VARCHAR2, FILE_FILTER IN VARCHAR2, MESSAGE IN VARCHAR2, DIALOG_TYPE IN NUMBER, SELECT_FILE IN BOOLEAN) RETURN VARCHAR2; The arguments for this WebUtil function are: DIRECTORY_NAME : Specifies the name of the directory containing the file you want to open. If DIRECTORY_NAME is NULL , subsequent invocations of the dialog box may open the last directory visited. FILE_NAME : Specifies the name of the file you want to open. FILE_FILTER : Specifies that only particular files be shown. On Windows, the default is “ All Files (*.*)|*.*| ” if NULL . MESSAGE : Specifies the title of the file upload dialog box DIALOG_TYPE : Specifies the intended dialog box to OPEN_FILE or SAVE_FILE . SELECT_FILE : Specifies whether the user is selecting files or directories. The default value is TRUE ; if set to FALSE , the user must select a directory. If DIALOG_TYPE is set to SAVE_FILE , SELECT_FILE is internally set to TRUE .
Example: Reading an Image File into Forms from the Client You can use the CLIENT_IMAGE package to read or write image files. For example, the CLIENT_IMAGE.READ_IMAGE_FILE procedure reads an image from the client file system and displays it in the Forms image item: CLIENT_IMAGE.READ_IMAGE_FILE ( FILE_NAME VARCHAR2, FILE_TYPE VARCHAR2, ITEM_ID ITEM or ITEM_NAME VARCHAR2); The arguments for this WebUtil procedure are: FILE_NAME Valid file name: The file name designation can include a full path statement appropriate to your operating system. FILE_TYPE The valid image file type: BMP, CALS, GIF, JFIF, JPG, PICT, RAS, TIFF, or TPIC. (Note: File type is optional, because Oracle Forms will attempt to deduce it from the source image file. To optimize performance, however, you should specify the file type.) ITEM_ID : The unique ID Oracle Forms assigns to the image item when it creates it. ITEM_NAME : The name you gave the image item when you created it.
Example: Writing Text Files on the Client With CLIENT_TEXT_IO commands, you can create or read text files on the client containing any ASCII text. This example creates a batch file on the client to display a directory listing of the c: emp directory. The code does the following: 1. Declares a variable to hold a handle to the file 2. Opens a file named tempdir.bat on the client for writing 3. Writes the following lines of text to the file: dir c: emp> c: empmydir.txt notepad c: empmydir.txt del c: empmydir.* 4. Closes the file
Example: Executing OS Commands on the Client You can execute simple HOST commands on the client using the CLIENT_HOST command of WebUtil. The example shows running the batch file that was created in the previous example with CLIENT_TEXT_IO ; cmd /c opens a command window and closes it after running the command. You must use cmd /c rather than running the command directly or it will not work. You can run any command that you would be able to execute from the Windows Start > Run menu. Rather than creating the batch file with CLIENT_TEXT_IO , alternatively you can execute the commands it contains as follows: CLIENT_HOST('cmd /c dir c: emp> c: empmydir.txt'); CLIENT_HOST('cmd /c notepad c: empmydir.txt'); CLIENT_HOST('cmd /c del c: empmydir.*'); Note: You can obtain greater versatility in executing operating system commands by using the WebUtil_Host package. This enables you to execute commands synchronously or asynchronously and to call back into Forms from asynchronous commands when execution is complete.
Example: Performing OLE Automation on the Client You can use any OLE2 package on the client by preceding it with CLIENT_ . You can see the list of the OLE2 package procedures and functions in the Forms Builder Object Navigator under the Built-in Packages node. You can see examples of client OLE on OTN at http://otn.oracle.com/products/forms/htdocs/webutil/webutil.htm. The following example takes data from a form to construct a Word document and save it to the client machine: DECLARE app CLIENT_OLE2.OBJ_TYPE; docs CLIENT_OLE2.OBJ_TYPE; doc CLIENT_OLE2.OBJ_TYPE; selection CLIENT_OLE2.OBJ_TYPE; args CLIENT_OLE2.LIST_TYPE; BEGIN -- create a new document app := CLIENT_OLE2.CREATE_OBJ('Word.Application'); CLIENT_OLE2.SET_PROPERTY(app,'Visible',1);
Example: Performing OLE Automation on the Client (continued) docs := CLIENT_OLE2.GET_OBJ_PROPERTY(app, 'Documents'); doc := CLIENT_OLE2.INVOKE_OBJ(docs, 'add'); selection := CLIENT_OLE2.GET_OBJ_PROPERTY(app, 'Selection'); -- Skip 10 lines args := CLIENT_OLE2.CREATE_ARGLIST; CLIENT_OLE2.ADD_ARG(args,6); FOR i IN 1..10 LOOP CLIENT_OLE2.INVOKE(selection,'InsertBreak',args); END LOOP; -- insert data into new document CLIENT_OLE2.SET_PROPERTY(selection,'Text', 'RE: Order# '|| :orders.order_id); FOR i in 1..2 LOOP CLIENT_OLE2.INVOKE(selection,'EndKey'); CLIENT_OLE2.INVOKE(selection,'InsertBreak',args); END LOOP; CLIENT_OLE2.SET_PROPERTY(selection,'Text', 'Dear '|| :customer_name||':'); FOR i in 1..2 LOOP CLIENT_OLE2.INVOKE(selection,'EndKey'); CLIENT_OLE2.INVOKE(selection,'InsertBreak',args); END LOOP; CLIENT_OLE2.SET_PROPERTY(selection,'Text','Thank you for your '|| 'order dated'|| to_char(:orders.order_date,'fmMonth DD, YYYY')|| ', in the amount of '|| to_char(:control.total,'$99,999.99')|| '. We will process your order immediately and want you to ' || 'know that we appreciate your business'); FOR i in 1..2 LOOP CLIENT_OLE2.INVOKE(selection,'EndKey'); CLIENT_OLE2.INVOKE(selection,'InsertBreak',args); END LOOP;
Example: Performing OLE Automation on the Client (continued) CLIENT_OLE2.SET_PROPERTY(selection,'Text','Sincerely,'); FOR i in 1..5 LOOP CLIENT_OLE2.INVOKE(selection,'EndKey'); CLIENT_OLE2.INVOKE(selection,'InsertBreak',args); END LOOP; IF :orders.sales_rep_id IS NOT NULL THEN CLIENT_OLE2.SET_PROPERTY(selection,'Text', :orders.sales_rep_name || ', Sales Representative'); CLIENT_OLE2.INVOKE(selection,'EndKey'); CLIENT_OLE2.INVOKE(selection,'InsertBreak',args); END IF; CLIENT_OLE2.SET_PROPERTY(selection,'Text','Summit Office Supply'); -- save document in temporary directory CLIENT_OLE2.DESTROY_ARGLIST(args); args := CLIENT_OLE2.CREATE_ARGLIST; CLIENT_OLE2.ADD_ARG(args, 'letter_'|| :orders.order_id || '.doc'); CLIENT_OLE2.INVOKE(doc, 'SaveAs', args); CLIENT_OLE2.DESTROY_ARGLIST(args); -- close example.tmp args := CLIENT_OLE2.CREATE_ARGLIST; CLIENT_OLE2.ADD_ARG(args, 0); CLIENT_OLE2.INVOKE(doc, 'Close', args); CLIENT_OLE2.DESTROY_ARGLIST(args); CLIENT_OLE2.RELEASE_OBJ(selection); CLIENT_OLE2.RELEASE_OBJ(doc); CLIENT_OLE2.RELEASE_OBJ(docs); -- exit MSWord CLIENT_OLE2.INVOKE(app,'Quit'); message('Letter created: letter_'|| :orders.order_id || '.doc'); END; Instructor Note This code is provided for student reference; there is no need to go over it in detail.
Example: Obtaining Environment Information about the Client You can use the CLIENT_TOOL_ENV.GETVAR procedure from WebUtil to obtain information about registry variables on the client machine. You can obtain the values of any registry variables in the key, HKEY_LOCAL_MACHINE > SOFTWARE > ORACLE . Note: You can obtain a greater variety of information about the client with the WebUtil_ClientInfo package. Instructor Note Demonstration: Run the WU_TEST form from Forms Builder. To show students additional functionality of WebUtil, demonstrate as many features as you have time for. You can find detailed instructions for running this demo in WU_TEST.html in the demo directory. Emphasize to students that they can download this demo from OTN to see examples of coding the various functions of WebUtil.
Summary WebUtil, included as part of Developer Suite 10 g Patchset 1 and a free download from OTN prior to that, consists of a set of Java classes and a PL/SQL API. You can extend WebUtil by adding Java classes. The PL/SQL API enables you to do all coding within the form in PL/SQL. After the middle tier has been configured for WebUtil, in order to use it in a form you need only add an object group from WebUtil’s object library and attach WebUtil’s PL/SQL library. You shoud not use WebUtil functions in triggers that fire as the form is starting up or after its user interface has been destroyed. WebUtil includes much functionality. Some of the most common commands enable you to: Open a file dialog box on the client ( CLIENT_GET_FILE_NAME ) Read or write an image file on the client ( CLIENT_IMAGE package) Read or write a text file on the client ( CLIENT_TEXT_IO ) Execute operating system commands ( CLIENT_HOST or WebUtil.HOST package) Perform OLE automation on the client ( CLIENT_OLE2 ) Obtain information about the client machine ( CLIENT_TOOL_ENV )
Practice 24 Overview In this practice, you integrate WebUtil with a form, and then use WebUtil to perform various functions on the client machine. Note: For solutions to this practice, see Practice 24 in Appendix A, “Practice Solutions.” Instructor Note The version of WebUtil (1.0.2) used in this course does not enable use of the debugger. See bug 3497366, which is fixed in the production release of WebUtil.
Practice 24 1. In the ORDG XX form, integrate the WebUtil objects and library. 2. Save the form. 3. Change the Exit button in the Control block. Rename it: New_Image_Btn. Relabel it: New Image. Delete the current code for the button and write code to enable the user to choose a new JPEG image to display in the Product_Image item. Hint: You will need to use CLIENT_GET_FILENAME and CLIENT_IMAGE.READ_IMAGE_FILE . You can import the code from pr24_3.txt . Set the Forms Builder run-time preferences to use a WebUtil configuration that has been set up for you, ?config=webutil , and then run the form to test it. Try to load one of the .jpg images in the lab directory. Note: Because the image item is not a base table item, the new image is not saved when you exit the form. If you have time, experiment with some of the other client/server parity APIs by adding additional code to the New_Image_Btn button. For example, you could: a. Display a message on the status line that contains the value of the ORACLE_HOME environment variable. You can import the code from pr24_4a.txt . b. Create a file called hello.txt in the c: emp directory that contains the text “Hello World” and invoke Notepad to display this file. You can import the code from pr24_4b.txt .