SSIS Connection managers and data sourcesSlava Kokaev
This document discusses SSIS data sources and connections. It provides an overview of different types of connections that can be used in SSIS packages, including OLEDB, ADO.NET, flat file, FTP, and Excel connections. Examples are given for Oracle and SQL Server OLEDB connection strings. The resources section links to Microsoft documentation on SSIS connections and data sources for further reference.
Installing and Invoking Oracle Data Integrator (ODI) Public Web Services (whi...Revelation Technologies
The document discusses installing and invoking the Oracle Data Integrator (ODI) Public Web Service. It describes how to deploy the Apache Axis2 web service framework and upload the ODI web service archive file. This allows scenarios in ODI to be executed via web service calls. The key ODI Public Web Service operations are listed, including invoking scenarios. An example payload is provided to demonstrate how to execute a scenario remotely through the web service.
This document provides instructions for setting up calendars and currencies in the Oracle General Ledger. It describes how to define calendar types and periods, set up accounting calendars, validate calendars, and create transaction calendars for average balance calculations. It also explains how to define new currencies and enable currencies for use in the general ledger.
The document discusses the Logistics Extraction Cockpit, a new technique for extracting logistics information from SAP systems. It has standardized extract structures and data sources that improve performance over the previous LIS method. The cockpit provides a centralized tool for maintaining extractions across logistics applications like sales and distribution. It reduces data volumes and load on the system compared to LIS.
This document outlines basic accounting settings including selecting a variant principle, fiscal year, currencies to use, and setting up a cash journal. It provides configuration options for fundamental accounting parameters.
This document provides a test script for Oracle Fusion Financials R10 general ledger system testing, outlining 280 scenarios to be tested across various general ledger processes like managing fiscal periods and calendars, journals, allocations, posting, and more. It requests the reader to contact Khalil Rehman of VIP APPS Consulting to discuss consultancy needs for system and user acceptance testing for an Oracle Fusion Cloud project. The content shows the scope of testing that would be done for Oracle General Ledger R10.
This document outlines the steps to configure the lockbox process in SAP, including:
1) Defining house banks and lockbox accounts for a house bank.
2) Setting control parameters and posting data for lockboxes.
3) Preparing a sample lockbox file for testing with an invoice for $400.
4) Executing transactions FLB2 and FLB1 to test the lockbox configuration.
Lo extraction part 6 implementation methodologyJNTU University
The document provides an overview of the implementation methodology for LO extraction in SAP BI. It describes the key steps in the ECC and BI systems, including activating data sources, extract structures, and filling setup tables in ECC, and replicating, migrating, and loading data sources and cubes in the BI system. It also discusses delta loading to update cubes with changed data from the ECC system.
This document provides an overview of the Sales and Distribution (SD) module in SAP. It describes the key areas of sales, shipping, and billing. It also explains the organizational structure, master data, processes, tables, and transactions involved in SD. The next part will cover extractors used for LO extraction from the SD module.
Your company is not-yet- ready for the cloud ?
How to refresh your BI solution by providing the beauty of Power BI reports on premises and the ability from the same place to consume your legacy reports or to share efficiently your data model through a unique place. Demo based session with an architecture introduction and a "from the field" real project feedback.
This document describes the lockbox process in SAP. The lockbox process allows companies to have customers mail payments directly to a bank, which then processes the payments and sends payment data electronically to the company. The bank generates a BAI2 file with payment information that is imported into SAP. Payments are automatically matched to open invoices, while unmatched payments are manually processed. Key steps include configuring the bank and lockbox accounts, control parameters, and tolerance settings for payment clearing in SAP.
The document discusses SAP's Business Planning and Consolidation (BPC) software. It provides an overview of SAP BPC and how it can help with financial consolidation. Key points covered include how SAP BPC allows companies to consolidate data from multiple sources, perform automated adjustments during consolidation, and generate financial reports. The document also reviews the consolidation process, including uploading subsidiary financials, translating currencies, matching intercompany transactions, running the consolidation, and reviewing the results.
The document discusses how to import journals into Oracle Cloud ERP using a SOAP WSDL. It provides steps to load data into the GL_INTERFACE tables using the SOAP WSDL, run an ESS process to load the data into base tables, and includes a sample SOAP request and response payload. It also provides SQL queries that can be used to check the data in the interface and base tables.
The document outlines the monthly closing process steps in SAP FI, which includes executing reports for intercompany activity and journal entries, opening the next year's posting period, running business area assignment reports, reviewing and posting recurring journal entries, processing parked accounting documents, performing asset maintenance tasks like additions and retirements, entering payroll data, reconciling asset subledgers, checking bank data and open items, billing documents, inventory, and performing manual adjustments. Key month-end activities include foreign currency valuation, posting recurring entries, accrual/deferral entries, automatic clearing, maintaining exchange rates, posting depreciation, tax payments, and closing periods.
SQL Server Integration Services (SSIS) is a platform for data integration and workflow applications. The SSIS architecture includes packages, tasks, containers, variables, connections and event handlers. Packages contain control flow elements, like tasks and containers, that prepare data. Data flow elements in packages extract, transform and load data. The control flow engine manages task execution while the data flow engine moves data between sources and destinations.
Quick sap co configuration Internal OrderCapgemini
Internal order is a virtual place for collecting/pooling the costs of a particular activity/task. i.e. it is a method to collect those costs and business transactions related to the task/activity. It is a means of tracking costs of a specific job, service, or task. Periodically the costs which are pooled in an internal order can be settled to an asset or to a cost center or to a GL Account or to an order. Thus, while recording you need not analyze the costs. Just record and pool the costs in internal order. After that (generally at the end of the month) these costs are analyzed and settled for relevant elements (like asset or cost center etc).
This method of recording and settling the costs helps in analyzing the costs of cost center wise, profit center wise or cost element-wise. This level of monitoring can be very detailed but allows management the ability to review Internal Order activity for better-decision making purposes.
Flexible workflows in SAP allow for more custom development and configuration compared to classical workflows. With flexible workflows, the workflow scenarios are configured by the customer using pre-delivered building blocks, including tasks, recipient assignment rules, and conditions. Flexible workflows can be triggered conditionally using pre-conditions configured through BADIs. They also support using pre-delivered email templates that can be customized or extended for a given workflow scenario.
This document provides an overview of the SAP Fiori architecture. It discusses the prerequisites, components, deployment options, typical landscape, and future plans. SAP Fiori allows users to access business applications from desktops, tablets, and smartphones using HTML5. It consists of two main components: UI addons and integration addons. The integration addons provide OData services via SAP NetWeaver Gateway while the UI addons contain the apps and UI elements.
SAP is an ERP software that offers a centralized system for businesses to manage processes. It has evolved over time from a one-tier architecture to a multi-tier system with presentation, application, and database layers. The application layer is where processing occurs and includes work processes that are distributed to by dispatchers. Key SAP modules include SRM for procurement, ARIBA which SAP acquired, SOLMAN for application management, and S/4HANA which is SAP's next generation ERP that leverages new technologies.
SAP Legacy System Migration Workbench (LSMW): IntroductionJonathan Eemans
In SAP R/3 and SAP ECC, the Legacy System Migration Workbench is a tool that supports transferring data from (non-)SAP systems ("Legacy Systems") to SAP systems once or periodically.
SAP FI is a module in SAP ERP that handles financial accounting and management. It includes submodules for general ledger, accounts receivable, accounts payable, asset accounting, and other financial functions. This tutorial provides an introduction to SAP FI, its modules, and how to set up key components like the chart of accounts, account groups, posting keys, and document types. It aims to help consultants and professionals learn how to implement and work with the SAP FI module.
SAP NetWeaver is a set of technologies that provides integration between SAP modules and other external systems. It includes components for people integration, information integration, process integration, and application platform. The application platform is built on the SAP Web Application Server. The SAP NetWeaver Portal allows users single sign-on access to enterprise applications and information from a web browser. It uses a portal runtime container and content directory and connects to backend systems through a connector framework. Developers can create portal applications using tools like Visual Composer, Business Server Pages, WebDynpro, and Java EE.
This document provides a functional specification for a new GST purchase register report (ZMMPRG) in SAP. The specification includes:
1. Justification for the new report to capture additional fields required under the GST regime.
2. Details of the business requirements including a flow diagram and description of the operational requirements. It outlines 16 new fields to be added to an existing report and the logic to retrieve data for each field from various SAP tables.
3. Information on the conversion including tables and fields involved, input screen mapping, validation and error handling requirements.
4. Details for testing including sample test cases and sign-off procedures.
The specification provides a comprehensive description of
Contents
Business Partner Roles and BP Creation
Step 1: Define BP Roles
Step2: Define Number Ranges.
Derived Flows
Step 5: Assign Flow Types to Transaction Type
Step 6: Define Calculation Procedure for Derived Flows
Assign Condition Types to Transaction Types
55A - Interest Rate Instruments
Interset Accrual/Deferral
53A Commercial Paper
Commercial Paper Overview
SAP FI - Treasury Integration
End User Training
Commercial Papers - End User Training
Post to accounting - TBB1
Deposit At Notice
IMPORTANT NOTE
Part 2 - Securities Module
Securites - Basic Settings
Step 3: Define Number Ranges for Security Classes
Step 4: Define Condition Types
Step 5: Define Condition Groups
Step 10: Define General Classification for Securities
Step 11: Define Fund Type
Step12: Define Shareholding Types
Step 13: Define Security Classification
Step 14: Define Securities Account Categories
Step 15: Define Field Selection
Step 16: Define Generation of Securities Account Position Indicator
Step 17: Define Generation of ubledger Position Indicator
Step 18: Define Number Ranges for Transaction
Step 20: Define Flow Types
Step 21: Assign Flow Types to Transaction Types
Step 22: Define Update Types
Assign Update Types to Usages
Step 23: Assign Flow Types to Update Types
Step 24: Assign General Valuation Class
Step 25: Define Update Types
Step 26: Specify Update Types for Securities Account Management
Step 27: Assign Update Types to Condition Types
Step 28: Assign Update Types to the Functions of Security Account Management
Processing of SAP Treasury and Risk Management
Securities Account Creation T Code TRS_SEC_ACC -Edit
Class Master Data Creation T Code: FWZZ
Settle the Security Transaction (Purchase Transaction) T Code TS04
Go To TPM20 - Posting Journal
TBB1 - Execute Postings
TPM13 Subledger Cash Flow
TPM26: Quantity Ledger
TPM40A -
TPM51 - Periodical Reporting
Fixed Interest Bondss
Create Purchase Transaction for Fixed Interest Bonds
TBB1 - Treasury Post Flows
TPM40 - Class Cash Flow of Securities Account
Manual Debit Position
Common Errors - Securities Module
This document outlines the agenda and content for Day 4 of an SAP FI (Financial Accounting) Asset Accounting boot camp. The topics to be covered include a review of Day 3, key concepts of asset accounting such as organization structure and parallel accounting, asset accounting master data, business transactions, period-end closing and reporting, and new online document splitting functionality. The organization structure of asset accounting including charts of depreciation, depreciation areas, asset classes, and account determinations is also explained in detail.
Fiori for s4 hana troubleshooting tips and tricksJasbir Khanuja
The document provides tips for troubleshooting Fiori applications. It discusses learning the basics of the Fiori integration flow and ABAP programming model. Common errors with OData services, authorizations, and CDS views are explained. Steps for starting a troubleshooting session are outlined, such as clearing caches, analyzing errors, and performing corrective measures. The document also covers identifying what backend objects like Enterprise Search, CDS views, and ABAP code are being consumed by OData services.
Creating Next-Generation ADF Mobile ApplicationsBrian Huff
This document discusses strategies for building mobile apps. It begins with a history of mobile development and then discusses the pros and cons of native, web-based, and hybrid approaches. It recommends starting with a HTML5/web-based strategy before pursuing native apps, and considering hybrid apps if more functionality is needed. The presentation provides examples of hybrid mobile apps built with tools like PhoneGap and ADF Mobile.
Deep Dive: Oracle WebCenter Content Tips and Traps!Brian Huff
Collaborate 2014 presentation, a deep dive into Oracle WebCenter tips & traps in five common areas: metadata, contribution, consumption, security, and integrations.
Lo extraction part 6 implementation methodologyJNTU University
The document provides an overview of the implementation methodology for LO extraction in SAP BI. It describes the key steps in the ECC and BI systems, including activating data sources, extract structures, and filling setup tables in ECC, and replicating, migrating, and loading data sources and cubes in the BI system. It also discusses delta loading to update cubes with changed data from the ECC system.
This document provides an overview of the Sales and Distribution (SD) module in SAP. It describes the key areas of sales, shipping, and billing. It also explains the organizational structure, master data, processes, tables, and transactions involved in SD. The next part will cover extractors used for LO extraction from the SD module.
Your company is not-yet- ready for the cloud ?
How to refresh your BI solution by providing the beauty of Power BI reports on premises and the ability from the same place to consume your legacy reports or to share efficiently your data model through a unique place. Demo based session with an architecture introduction and a "from the field" real project feedback.
This document describes the lockbox process in SAP. The lockbox process allows companies to have customers mail payments directly to a bank, which then processes the payments and sends payment data electronically to the company. The bank generates a BAI2 file with payment information that is imported into SAP. Payments are automatically matched to open invoices, while unmatched payments are manually processed. Key steps include configuring the bank and lockbox accounts, control parameters, and tolerance settings for payment clearing in SAP.
The document discusses SAP's Business Planning and Consolidation (BPC) software. It provides an overview of SAP BPC and how it can help with financial consolidation. Key points covered include how SAP BPC allows companies to consolidate data from multiple sources, perform automated adjustments during consolidation, and generate financial reports. The document also reviews the consolidation process, including uploading subsidiary financials, translating currencies, matching intercompany transactions, running the consolidation, and reviewing the results.
The document discusses how to import journals into Oracle Cloud ERP using a SOAP WSDL. It provides steps to load data into the GL_INTERFACE tables using the SOAP WSDL, run an ESS process to load the data into base tables, and includes a sample SOAP request and response payload. It also provides SQL queries that can be used to check the data in the interface and base tables.
The document outlines the monthly closing process steps in SAP FI, which includes executing reports for intercompany activity and journal entries, opening the next year's posting period, running business area assignment reports, reviewing and posting recurring journal entries, processing parked accounting documents, performing asset maintenance tasks like additions and retirements, entering payroll data, reconciling asset subledgers, checking bank data and open items, billing documents, inventory, and performing manual adjustments. Key month-end activities include foreign currency valuation, posting recurring entries, accrual/deferral entries, automatic clearing, maintaining exchange rates, posting depreciation, tax payments, and closing periods.
SQL Server Integration Services (SSIS) is a platform for data integration and workflow applications. The SSIS architecture includes packages, tasks, containers, variables, connections and event handlers. Packages contain control flow elements, like tasks and containers, that prepare data. Data flow elements in packages extract, transform and load data. The control flow engine manages task execution while the data flow engine moves data between sources and destinations.
Quick sap co configuration Internal OrderCapgemini
Internal order is a virtual place for collecting/pooling the costs of a particular activity/task. i.e. it is a method to collect those costs and business transactions related to the task/activity. It is a means of tracking costs of a specific job, service, or task. Periodically the costs which are pooled in an internal order can be settled to an asset or to a cost center or to a GL Account or to an order. Thus, while recording you need not analyze the costs. Just record and pool the costs in internal order. After that (generally at the end of the month) these costs are analyzed and settled for relevant elements (like asset or cost center etc).
This method of recording and settling the costs helps in analyzing the costs of cost center wise, profit center wise or cost element-wise. This level of monitoring can be very detailed but allows management the ability to review Internal Order activity for better-decision making purposes.
Flexible workflows in SAP allow for more custom development and configuration compared to classical workflows. With flexible workflows, the workflow scenarios are configured by the customer using pre-delivered building blocks, including tasks, recipient assignment rules, and conditions. Flexible workflows can be triggered conditionally using pre-conditions configured through BADIs. They also support using pre-delivered email templates that can be customized or extended for a given workflow scenario.
This document provides an overview of the SAP Fiori architecture. It discusses the prerequisites, components, deployment options, typical landscape, and future plans. SAP Fiori allows users to access business applications from desktops, tablets, and smartphones using HTML5. It consists of two main components: UI addons and integration addons. The integration addons provide OData services via SAP NetWeaver Gateway while the UI addons contain the apps and UI elements.
SAP is an ERP software that offers a centralized system for businesses to manage processes. It has evolved over time from a one-tier architecture to a multi-tier system with presentation, application, and database layers. The application layer is where processing occurs and includes work processes that are distributed to by dispatchers. Key SAP modules include SRM for procurement, ARIBA which SAP acquired, SOLMAN for application management, and S/4HANA which is SAP's next generation ERP that leverages new technologies.
SAP Legacy System Migration Workbench (LSMW): IntroductionJonathan Eemans
In SAP R/3 and SAP ECC, the Legacy System Migration Workbench is a tool that supports transferring data from (non-)SAP systems ("Legacy Systems") to SAP systems once or periodically.
SAP FI is a module in SAP ERP that handles financial accounting and management. It includes submodules for general ledger, accounts receivable, accounts payable, asset accounting, and other financial functions. This tutorial provides an introduction to SAP FI, its modules, and how to set up key components like the chart of accounts, account groups, posting keys, and document types. It aims to help consultants and professionals learn how to implement and work with the SAP FI module.
SAP NetWeaver is a set of technologies that provides integration between SAP modules and other external systems. It includes components for people integration, information integration, process integration, and application platform. The application platform is built on the SAP Web Application Server. The SAP NetWeaver Portal allows users single sign-on access to enterprise applications and information from a web browser. It uses a portal runtime container and content directory and connects to backend systems through a connector framework. Developers can create portal applications using tools like Visual Composer, Business Server Pages, WebDynpro, and Java EE.
This document provides a functional specification for a new GST purchase register report (ZMMPRG) in SAP. The specification includes:
1. Justification for the new report to capture additional fields required under the GST regime.
2. Details of the business requirements including a flow diagram and description of the operational requirements. It outlines 16 new fields to be added to an existing report and the logic to retrieve data for each field from various SAP tables.
3. Information on the conversion including tables and fields involved, input screen mapping, validation and error handling requirements.
4. Details for testing including sample test cases and sign-off procedures.
The specification provides a comprehensive description of
Contents
Business Partner Roles and BP Creation
Step 1: Define BP Roles
Step2: Define Number Ranges.
Derived Flows
Step 5: Assign Flow Types to Transaction Type
Step 6: Define Calculation Procedure for Derived Flows
Assign Condition Types to Transaction Types
55A - Interest Rate Instruments
Interset Accrual/Deferral
53A Commercial Paper
Commercial Paper Overview
SAP FI - Treasury Integration
End User Training
Commercial Papers - End User Training
Post to accounting - TBB1
Deposit At Notice
IMPORTANT NOTE
Part 2 - Securities Module
Securites - Basic Settings
Step 3: Define Number Ranges for Security Classes
Step 4: Define Condition Types
Step 5: Define Condition Groups
Step 10: Define General Classification for Securities
Step 11: Define Fund Type
Step12: Define Shareholding Types
Step 13: Define Security Classification
Step 14: Define Securities Account Categories
Step 15: Define Field Selection
Step 16: Define Generation of Securities Account Position Indicator
Step 17: Define Generation of ubledger Position Indicator
Step 18: Define Number Ranges for Transaction
Step 20: Define Flow Types
Step 21: Assign Flow Types to Transaction Types
Step 22: Define Update Types
Assign Update Types to Usages
Step 23: Assign Flow Types to Update Types
Step 24: Assign General Valuation Class
Step 25: Define Update Types
Step 26: Specify Update Types for Securities Account Management
Step 27: Assign Update Types to Condition Types
Step 28: Assign Update Types to the Functions of Security Account Management
Processing of SAP Treasury and Risk Management
Securities Account Creation T Code TRS_SEC_ACC -Edit
Class Master Data Creation T Code: FWZZ
Settle the Security Transaction (Purchase Transaction) T Code TS04
Go To TPM20 - Posting Journal
TBB1 - Execute Postings
TPM13 Subledger Cash Flow
TPM26: Quantity Ledger
TPM40A -
TPM51 - Periodical Reporting
Fixed Interest Bondss
Create Purchase Transaction for Fixed Interest Bonds
TBB1 - Treasury Post Flows
TPM40 - Class Cash Flow of Securities Account
Manual Debit Position
Common Errors - Securities Module
This document outlines the agenda and content for Day 4 of an SAP FI (Financial Accounting) Asset Accounting boot camp. The topics to be covered include a review of Day 3, key concepts of asset accounting such as organization structure and parallel accounting, asset accounting master data, business transactions, period-end closing and reporting, and new online document splitting functionality. The organization structure of asset accounting including charts of depreciation, depreciation areas, asset classes, and account determinations is also explained in detail.
Fiori for s4 hana troubleshooting tips and tricksJasbir Khanuja
The document provides tips for troubleshooting Fiori applications. It discusses learning the basics of the Fiori integration flow and ABAP programming model. Common errors with OData services, authorizations, and CDS views are explained. Steps for starting a troubleshooting session are outlined, such as clearing caches, analyzing errors, and performing corrective measures. The document also covers identifying what backend objects like Enterprise Search, CDS views, and ABAP code are being consumed by OData services.
Creating Next-Generation ADF Mobile ApplicationsBrian Huff
This document discusses strategies for building mobile apps. It begins with a history of mobile development and then discusses the pros and cons of native, web-based, and hybrid approaches. It recommends starting with a HTML5/web-based strategy before pursuing native apps, and considering hybrid apps if more functionality is needed. The presentation provides examples of hybrid mobile apps built with tools like PhoneGap and ADF Mobile.
Deep Dive: Oracle WebCenter Content Tips and Traps!Brian Huff
Collaborate 2014 presentation, a deep dive into Oracle WebCenter tips & traps in five common areas: metadata, contribution, consumption, security, and integrations.
Seamless Integrations between WebCenter Content, Site Studio, and WebCenter S...Brian Huff
Using integration options both existing and soon-to-be-released, this talk covers multiple integration options between WebCenter Sites and WebCenter Content (Site Studio)
This document discusses integrating ADF Mobile with WebCenter to build hybrid mobile applications. It provides an overview of mobile strategies including native, mobile web, and hybrid apps. It then covers using ADF Mobile which allows creating native-like apps using HTML5 and JavaScript. It recommends consuming existing WebCenter and backend services through middleware like WebCenter Mashups and discusses best practices for integrating content and building hybrid apps with ADF Mobile.
FatWire Tutorial For Site Studio DevelopersBrian Huff
This document provides an overview and introduction to FatWire, including:
- A comparison of FatWire, WebCenter Content, and WebCenter Portal
- An explanation of the typical architecture of a FatWire system with four tiers: development, QA/testing, management, and production/delivery
- A description of the different types of assets in FatWire like pages, templates, and content and how they fit together
Creating a Global E-Commerce Website With E-Business Suite and Fusion MiddlewareBrian Huff
Creating an e-commerce web site is always a challenge, but it's even a bigger challenge if its a global website for a multinational firm in a heavily regulated industry. Thousands of products, hundreds of locales, different regulations, different prices, and different marketing collateral. Attend this session to see how we wired together E-Business Suite, WebLogic Portal, Universal Content Management, Identity Management, and Enterprise Search to meet the global business needs.
The document provides an overview of Application Link Enabling (ALE) and Intermediate Documents (IDocs) in SAP. It discusses what ALE is, its components, the anatomy of an IDoc, and ALE processing transactions for monitoring and processing IDocs.
This document provides an introduction and overview of EDI (Electronic Data Interchange) and ALE (Application Link Enabling) in SAP. It discusses the key components and processes for setting up and using EDI and ALE to electronically exchange data between business partners. This includes defining logical systems, RFC destinations, ports, basic and message IDOC types, partner profiles, and writing programs to generate IDOC records and send the data. The goal is to automate the exchange of business documents and data between trading partners in a standard electronic format for improved efficiency and reduced costs.
Integrating ECM (WebCenter Content) with your Enterprise! 5 Tips to Try, 5 Tr...Brian Huff
There are a number of ways to scale up a basic content or collaboration application into a true Enterprise Content Management system. But which one makes the most sense in your situation? If you pick the wrong path, how will you know it? And what techniques seem compelling, but will eventually lead to an unusable system? In this talk, we will present 10 integration strategies: 5 that work, and 5 that hurt.
This document provides an overview and table of contents for a book about ALE, EDI, and IDoc technologies for SAP. It covers topics such as EDI basics, the SAP EDI interface, configuring EDI components, operating and administering the EDI interface, and various EDI scenarios. The book is divided into five parts that cover EDI, the SAP EDI interface, configuring the EDI interface, operating and administering the interface, and specific EDI scenarios. Each part contains multiple chapters that dive deeper into the topics.
The document outlines the 12 steps to configure iDoc creation, including: 1) creating a logical system, 2) allocating the logical system to a client, 3) maintaining number ranges for ports, IDocs, and change pointers, 4) distributing customer models, 5) maintaining RFC destinations, 6) generating partner profiles, 7) maintaining customer distribution models directly, 8) activating change pointers for message types, 9) defining ports, 10) defining partner profiles, 11) configuring outbound parameters for senders, and 12) configuring inbound parameters for receivers.
1) Verilog allows parameters and localparams to define constants in modules. Parameters can alter module behavior when their values change, while localparam values cannot change.
2) System tasks like $display and $monitor are used for outputting values and monitoring signals. $stop and $finish control simulation execution.
3) Compiler directives like `define, `include, `ifdef and `timescale are used to define macros, include files, and make conditional compilations in Verilog.
1. The runbook grants a user VPN access by making changes to their Active Directory profile after their request is approved.
2. It runs .NET scripts to extract the user's SAM account name and grant VPN access by setting the msnpallowdialin property to true.
3. It then gets information on the user and their manager from Active Directory to notify them by email that VPN access was granted.
Twig is a template engine for PHP. It parses templates into tags, prints, and blocks. The lexer tokenizes templates into tokens, and the parser converts tokens into an AST. The compiler generates PHP code from the AST. Twig supports tags like for loops and if/else, macros, and internationalization. It can be extended with custom tags, filters, functions. Security features include escaping, sandboxing and permissions. Templates can access objects and be rendered without controllers.
1. The document describes the prerequisites for setting up output in Excel using PL/SQL with XML, including designing an Excel layout, defining a stored procedure and concurrent program, and setting up required profiles.
2. It provides steps to create a PL/SQL package to generate the XML code for the Excel output, including functions to print the header, data rows, and footer.
3. Running the package main procedure will execute a cursor to fetch data and write it to the XML output, which can then be viewed in Excel when selecting that option.
This document provides an introduction and overview of stored procedures and functions in SQL. It discusses transaction management using COMMIT and ROLLBACK statements. It defines stored procedures as precompiled collections of SQL statements that can accept parameters and return values. Stored procedures offer benefits like modular programming and faster execution. The document also introduces user-defined functions and provides examples of creating and executing stored procedures and functions.
The document discusses the different types of states managed by ASP.NET - view state, control state, session state, and application state. It provides details on what each state is used for and how information is stored and retrieved for each state. View state stores page and control property changes across postbacks. Control state cannot be modified or accessed directly. Session state stores user-specific data for the current session. Application state stores information available to all users, like counters and global application data.
This document describes how to use Alfredo PUMEX to add pluggable customizations to the SugarCRM Users module without modifying core files. PUMEX uses jQuery to dynamically extend the Users module functionality. It includes JavaScript files that insert custom HTML into detail and edit views via AJAX calls. Server-side PHP scripts then render additional Smarty templates containing custom fields and handle saving custom field data. This allows customizing the Users module in a modular way without patching SugarCRM core files.
Alfredo PUMEX provides a pluggable extension mechanism for customizing the SugarCRM Users module without modifying core files. It makes extensive use of jQuery and Alfredo Patch to dynamically extend the Users module functionality. Template files and JavaScript are used to augment views, while a globbing mechanism loads custom PHP scripts on relevant actions. This allows per-user customizations to be added in a modular way without touching the original Users code. The document provides an example of refactoring the YAAI module to use this approach instead of overwriting core files.
Alfredo PUMEX provides a pluggable mechanism for customizing the SugarCRM Users module without modifying core files. It uses jQuery and Alfredo Patch to dynamically extend the Users module functionality. Extension modules simply provide template and PHP files that are loaded via globbing. This allows customizing detail and edit views, and intercepting save actions to handle custom fields. The document provides an example of refactoring the YAAI module to use this approach instead of overwriting core files.
This document describes how to use Alfredo PUMEX to add customizable fields to the SugarCRM Users module in a modular way without overwriting core files. PUMEX uses jQuery to dynamically extend the Users module functionality. It includes JavaScript files that insert custom HTML into the detail and edit views. Server-side PHP scripts then retrieve and save any custom field data. This allows third-party modules to customize the Users module in a standardized way without conflicting with each other or requiring patches on SugarCRM upgrades.
The document provides an overview of Smarty, a widely used PHP templating system. It discusses that Smarty was created by Andrei Zmievski and separates display logic from controller logic for improved security and ease of use. Key features covered include literal tags, modifiers, and capture/cycle functions that allow for powerful templating capabilities. Examples demonstrate how to output variables, format dates, and alternate content display. Resources listed provide more documentation on Smarty syntax and usage.
Over the years there have been countless technical and social presentations doting on 5, 10, 12 ways to improve this, that and the other.
I will go through various performance tweaks (not tweets) for Oracle Application Express without limiting myself to a golden number.
These improvements will vary from simple PL/SQL refactoring; to monitoring for bottlenecks in your application; to cutting down maintenance time - which relates to the performance of you as an Oracle developer with only 24 hours in a day.
We may even visit a little APEX instrumentation on the way.
The document discusses PHP, including introducing PHP and its basic syntax, data types, operators, arrays, and array manipulation. Key points covered include:
- PHP is a popular server-side scripting language that is free and open-source
- PHP code is enclosed within <?php ?> tags
- Variables start with $, types include integers, strings, arrays
- Operators like +, -, *, / can be used, and arrays store multiple elements that can be accessed by index
- Arrays can be created and values assigned in different ways, then iterated through to output elements
Last updated on Dec 12, 2014
The Sightly template language, shipped with Adobe Experience Manager 6.0, simplifies a lot the component development workflow by allowing front-end developers to edit components themselves directly.
Learn about the main features of that template language, and about the tools available to make project development work more efficient.
Web-based application development part 31MINIMIZE .docxcelenarouzie
Web-based application development part 3
1
MINIMIZE USER ERROR WITH UI DESIGN
Sometimes it is useful to change the fields in a form so that only possible values can be selected. For example, in the professor information edit form above, if we were to have a typo in the Department textbox upon submission, the database will have an erroneous entry. To reduce such occurrences, we may purposefully change the user interface so that only allowed values are shown. For example, we can show the list of departments as a combo box. Let’s look at how this can be done.
[see code for formEditProfessorWithComboFromDB.php on the next two pages]
2
FROM EDIT PROFESSOR WITH COMBO FROM DB
Not enough space here for the code (see footnote).
Source Code for formEditProfessorWithComboFromDB.php
<html>
<head><title>Form for Editing Professors using ComboBox to Reduce User Error</title></head>
<body>
<?php
// Database Connection
$db = mysql_connect("mydb.itap.purdue.edu", "USERNAME", "MYSQL_PASSWORD"); // change this!!!
mysql_select_db("USERNAME", $db); // change this also!!!
$pid = $_GET['pid'];
$query = "SELECT ProfessorName, Department FROM Professor WHERE ProfessorID = '$pid'";
$result = mysql_query($query, $db);
if ($myrow = mysql_fetch_array($result)) {
$pname = $myrow['ProfessorName'];
$dept = $myrow['Department'];
?>
<form method=GET action="editProfessor.php">
<table width=600 border=1>
<tr>
<td width=150>Professor ID: </td>
<td><?php print $pid; ?><input type=hidden name=pid value="<?php print $pid; ?>"></td>
</tr>
<tr>
<td>Professor Name: </td>
<td><input type=text name=pname value="<?php print $pname; ?>"></td>
</tr>
<tr>
<td>Department: </td>
<td><select name=dept>
<?php
$deptQuery = "SELECT DISTINCT Department FROM Professor ORDER BY Department ASC";
$deptResult = mysql_query($deptQuery, $db);
if ($myDeptRow = mysql_fetch_array($deptResult)) {
do {
$department = $myDeptRow['Department'];
if ($department == $dept) {
print "<option value=\"$department\"selected>$department</option>\n";
} else {
print "<option value=\"$department\">$department</option>\n";
}
} while ($myDeptRow = mysql_fetch_array($deptResult));
}
?>
</select>
</td>
</tr>
<tr>
<td colspan=2 align=center><input type=submit value="Click here to submit"></td>
</tr>
</table>
</form>
<?php
} else {
print "error Professor with ProfessorID = $pid not found\n";
}
?>
</body>
</html>
3
...
28 <tr>
29 <td>Department: </td>
30 <td><select name=dept>
31 <?php
32 $deptQuery = "SELECT DISTINCT Department FROM Professor ORDER BY Department ASC";
33 $deptResult = mysql_query($deptQuery, $db);
34
35 if ($myDeptRow = mysql_fetch_array($deptResult)) {
36 do {
37 $department = $myDeptRow['Department'];
38 if ($department == $dept) {
39 print "<option value=\"$department\" selected>$department</option>\n";
40 } else {
41 print "<option value=\"$department\">$department</option>\n";
42 }
43 .
This document discusses caching templates in Template Toolkit to improve performance. It describes how to profile templates to identify optimization opportunities. Implementing caching reduced the total request processing time by 4.9 times and accelerated template rendering by 20 times. The Template::Context::Cacheable module provides caching capabilities and is available on GitHub.
MySQL is an open-source relational database management system that uses SQL and runs a server providing multi-user access to databases. It allows users to perform queries and make changes to data through commands like SELECT, INSERT, UPDATE, DELETE. Stored procedures and functions allow users to write and save blocks of SQL code for repeated execution with consistent results.
JavaScript variables hold values and are declared with var. Variable names are case sensitive and must begin with a letter or underscore. Variables can hold numbers, strings, Booleans, objects, and null values. Arrays are objects that hold multiple values in a single variable. Functions are blocks of code that perform tasks and are executed by events or calls. Objects store related data and functions to represent self-contained entities.
Modernizing the monolithic architecture to container based architecture apaco...Vinay Kumar
Transform the architecture from monolithic architecture to container/serverless architecture. Speaker would explain how things work with monolithic implementation and what would require to change to the container-based design. Example of Fusion middleware (WebLogic) to new technologies like node.js etc would be given. This session would be more interactive and provides advantages of the container-based system. Container and container management software would be explained.
Kafka and event driven architecture -apacoug20Vinay Kumar
Event-driven architecture in APIs and microservice are very important topics if you are developing modern applications with new technology, platforms. This session explains what is Kafka and how we can use in event-driven architecture. This session explains the basic concepts of publisher, subscriber, streams, and connect. Explain how Kafka works. The session covers developing different functions with different programming languages and shows how they can share messages by using Kafka. What are the options we have in Oracle stack? Which tool make it possible event-driven architecture in Oracle stack. Speaker will also explain Oracle Event HUB, OCI streaming, and Oracle AQ implementation.
Kafka and event driven architecture -og yatra20Vinay Kumar
This document provides an overview of Kafka and event-driven architecture. It discusses traditional SOA approaches and how event-driven architecture with Kafka can help address issues of tight coupling. Key concepts around Kafka are explained, including topics, partitions, producers, consumers, and how Kafka ensures reliability, scalability and performance. Domain events and how they differ from integration events are also defined.
Vinay Kumar is an Oracle ACE, enterprise architect, and co-author who will be presenting on Oracle API platform introduction, evolution of API management, API management architecture, components, policies, developer experience, API security best practices, and a demo. The presentation will cover Oracle API platform domains and requirements, differences between SOA/ESB and APIs/apps, API management platform components including management console, developer interface, API gateway, and API design. It will also discuss API management platform concepts including governance, security, developer/partner management, administration console, and monetization capabilities.
Extend soa with api management spoug- MadridVinay Kumar
Vinay Kumar is an Oracle ACE, Enterprise Architect, and co-author of a book on Oracle WebCenter Portal. He will present on Oracle API platform introduction, including the evolution of API management, extending SOA with API management, API management architecture and components, configuring API policies, APIMATIC for developer experience, API Fortress, best practices and benefits, and a demo. The Oracle API platform provides full lifecycle management of APIs from design to decommissioning. It is built on REST principles and supports integration with popular API tools. Key components include the management console, developer portal, API gateway, and API design tool APIARY.
Expose your data as an api is with oracle rest data services -spoug MadridVinay Kumar
This document provides information about Vinay Kumar and the topics he will discuss at SPOUG18-Madrid, including:
- An introduction to Oracle REST Data Services (ORDS) architecture and how it maps HTTP requests to SQL queries and transforms results to JSON.
- Best practices for using ORDS, including defining modules and templates, mapping URLs to SQL, connection pooling, and publishing APIs.
- How ORDS enables RESTful access to relational database content by allowing developers to declaratively map HTTP methods like GET, POST, PUT, DELETE to SQL operations.
Modern application development with oracle cloud sangam17Vinay Kumar
How Oracle cloud helps in building modern application development. This explains Oracle Application container cloud with developer cloud service and etc. Spring boot application deployed in Oracle ACCS and CI/CD part done in Oracle Developer cloud service.
Vinay Kumar completed the Core Elasticsearch: Operations course on 20 September 2016. A certificate of completion was issued to Vinay Kumar for this course, with an enrollment ID of 14593.
Vinay Kumar completed the Core Elasticsearch: Operations course on 20 September 2016. A certificate of completion was issued to Vinay Kumar for this course, which he completed with enrollment ID 14593.
This document provides an overview and demonstration of customizing WebCenter portal taskflows. It discusses the WebCenter infrastructure and services, outlines the steps to customize taskflows at design time using JDeveloper and at runtime using the portal console, and demonstrates the process through a live demo. The demo shows creating a taskflow customization application, importing a MAR file using WLST commands or the Fusion Middleware Control, editing a taskflow, creating a deployment profile, deploying the changes as a MAR file, and testing the customization.
This technical article explains personalization concept in Webcenter Portal. It also provides steps to create a scenario and use it in Webcenter Portal.
Custom audit rules in Jdeveloper extensionVinay Kumar
This document discusses creating custom audit rules in Oracle JDeveloper 12c. It covers setting up an extension development environment, creating an extension project, adding a custom audit rule analyzer class, configuring the extension manifest, running and testing the custom rule extension. The goal of custom rules is to analyze code for adherence to programming standards and identify defects to improve code quality and maintainability.
This document demonstrates how to upload a local file to a remote server using Oracle ADF Mobile. It describes setting up the development environment, creating an application and task flow, adding JavaScript code to call the device camera and upload the photo, and including Java code to call the JavaScript functions. The server component is a simple JSP page that accepts a file upload. When the user taps a button, it opens the camera to take a photo, uploads the file to the server, and logs the response.
This document provides guidelines for tuning the performance of Webcenter applications including Webcenter Portal, Webcenter Content, the underlying database, JRockit JVM, and WebLogic server. It describes tuning the database configuration, JVM garbage collection and heap size, WebLogic thread handling and logging levels, and session and caching settings for the Webcenter applications. The recommendations are intended to optimize the environment for a demo usage scenario.
Tuning and optimizing webcenter spaces application white paperVinay Kumar
This white paper focuses on Oracle WebCenter Spaces performance problem and analysis after post production deployment. We will tune JVM ( JRocket). Webcenter Portal, Webcenter content and ADF task flow.
This document provides performance optimization tips for the different layers of an Oracle Application Development Framework (ADF) application:
1) For the model layer, tips include using bind variables in view object queries, avoiding complex logic in backing beans, and defining unique keys on view objects.
2) For the user interface layer, tips include setting appropriate fetch sizes for trees and tables, minimizing the number of application module data controls, and using AJAX when possible.
3) For the controller layer, tips include reusing task flows, defining navigation in task flows rather than backing beans, and keeping managed beans in the lowest possible scope.
This document provides an overview of JSR 168 portlet development with examples. It discusses key concepts like portlets, the portlet container, and portals. It shows how to create a basic portlet by extending GenericPortlet and overriding methods like doView and processAction. The document also covers supporting classes, the portlet lifecycle, and deploying portlet applications with Maven.
Mobile App Development Company in Saudi ArabiaSteve Jonas
EmizenTech is a globally recognized software development company, proudly serving businesses since 2013. With over 11+ years of industry experience and a team of 200+ skilled professionals, we have successfully delivered 1200+ projects across various sectors. As a leading Mobile App Development Company In Saudi Arabia we offer end-to-end solutions for iOS, Android, and cross-platform applications. Our apps are known for their user-friendly interfaces, scalability, high performance, and strong security features. We tailor each mobile application to meet the unique needs of different industries, ensuring a seamless user experience. EmizenTech is committed to turning your vision into a powerful digital product that drives growth, innovation, and long-term success in the competitive mobile landscape of Saudi Arabia.
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...Alan Dix
Talk at the final event of Data Fusion Dynamics: A Collaborative UK-Saudi Initiative in Cybersecurity and Artificial Intelligence funded by the British Council UK-Saudi Challenge Fund 2024, Cardiff Metropolitan University, 29th April 2025
https://alandix.com/academic/talks/CMet2025-AI-Changes-Everything/
Is AI just another technology, or does it fundamentally change the way we live and think?
Every technology has a direct impact with micro-ethical consequences, some good, some bad. However more profound are the ways in which some technologies reshape the very fabric of society with macro-ethical impacts. The invention of the stirrup revolutionised mounted combat, but as a side effect gave rise to the feudal system, which still shapes politics today. The internal combustion engine offers personal freedom and creates pollution, but has also transformed the nature of urban planning and international trade. When we look at AI the micro-ethical issues, such as bias, are most obvious, but the macro-ethical challenges may be greater.
At a micro-ethical level AI has the potential to deepen social, ethnic and gender bias, issues I have warned about since the early 1990s! It is also being used increasingly on the battlefield. However, it also offers amazing opportunities in health and educations, as the recent Nobel prizes for the developers of AlphaFold illustrate. More radically, the need to encode ethics acts as a mirror to surface essential ethical problems and conflicts.
At the macro-ethical level, by the early 2000s digital technology had already begun to undermine sovereignty (e.g. gambling), market economics (through network effects and emergent monopolies), and the very meaning of money. Modern AI is the child of big data, big computation and ultimately big business, intensifying the inherent tendency of digital technology to concentrate power. AI is already unravelling the fundamentals of the social, political and economic world around us, but this is a world that needs radical reimagining to overcome the global environmental and human challenges that confront us. Our challenge is whether to let the threads fall as they may, or to use them to weave a better future.
Procurement Insights Cost To Value Guide.pptxJon Hansen
Procurement Insights integrated Historic Procurement Industry Archives, serves as a powerful complement — not a competitor — to other procurement industry firms. It fills critical gaps in depth, agility, and contextual insight that most traditional analyst and association models overlook.
Learn more about this value- driven proprietary service offering here.
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc
Most consumers believe they’re making informed decisions about their personal data—adjusting privacy settings, blocking trackers, and opting out where they can. However, our new research reveals that while awareness is high, taking meaningful action is still lacking. On the corporate side, many organizations report strong policies for managing third-party data and consumer consent yet fall short when it comes to consistency, accountability and transparency.
This session will explore the research findings from TrustArc’s Privacy Pulse Survey, examining consumer attitudes toward personal data collection and practical suggestions for corporate practices around purchasing third-party data.
Attendees will learn:
- Consumer awareness around data brokers and what consumers are doing to limit data collection
- How businesses assess third-party vendors and their consent management operations
- Where business preparedness needs improvement
- What these trends mean for the future of privacy governance and public trust
This discussion is essential for privacy, risk, and compliance professionals who want to ground their strategies in current data and prepare for what’s next in the privacy landscape.
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfSoftware Company
Explore the benefits and features of advanced logistics management software for businesses in Riyadh. This guide delves into the latest technologies, from real-time tracking and route optimization to warehouse management and inventory control, helping businesses streamline their logistics operations and reduce costs. Learn how implementing the right software solution can enhance efficiency, improve customer satisfaction, and provide a competitive edge in the growing logistics sector of Riyadh.
"Rebranding for Growth", Anna VelykoivanenkoFwdays
Since there is no single formula for rebranding, this presentation will explore best practices for aligning business strategy and communication to achieve business goals.
Leading AI Innovation As A Product Manager - Michael JidaelMichael Jidael
Unlike traditional product management, AI product leadership requires new mental models, collaborative approaches, and new measurement frameworks. This presentation breaks down how Product Managers can successfully lead AI Innovation in today's rapidly evolving technology landscape. Drawing from practical experience and industry best practices, I shared frameworks, approaches, and mindset shifts essential for product leaders navigating the unique challenges of AI product development.
In this deck, you'll discover:
- What AI leadership means for product managers
- The fundamental paradigm shift required for AI product development.
- A framework for identifying high-value AI opportunities for your products.
- How to transition from user stories to AI learning loops and hypothesis-driven development.
- The essential AI product management framework for defining, developing, and deploying intelligence.
- Technical and business metrics that matter in AI product development.
- Strategies for effective collaboration with data science and engineering teams.
- Framework for handling AI's probabilistic nature and setting stakeholder expectations.
- A real-world case study demonstrating these principles in action.
- Practical next steps to begin your AI product leadership journey.
This presentation is essential for Product Managers, aspiring PMs, product leaders, innovators, and anyone interested in understanding how to successfully build and manage AI-powered products from idea to impact. The key takeaway is that leading AI products is about creating capabilities (intelligence) that continuously improve and deliver increasing value over time.
Dev Dives: Automate and orchestrate your processes with UiPath MaestroUiPathCommunity
This session is designed to equip developers with the skills needed to build mission-critical, end-to-end processes that seamlessly orchestrate agents, people, and robots.
📕 Here's what you can expect:
- Modeling: Build end-to-end processes using BPMN.
- Implementing: Integrate agentic tasks, RPA, APIs, and advanced decisioning into processes.
- Operating: Control process instances with rewind, replay, pause, and stop functions.
- Monitoring: Use dashboards and embedded analytics for real-time insights into process instances.
This webinar is a must-attend for developers looking to enhance their agentic automation skills and orchestrate robust, mission-critical processes.
👨🏫 Speaker:
Andrei Vintila, Principal Product Manager @UiPath
This session streamed live on April 29, 2025, 16:00 CET.
Check out all our upcoming Dev Dives sessions at https://community.uipath.com/dev-dives-automation-developer-2025/.
How Can I use the AI Hype in my Business Context?Daniel Lehner
𝙄𝙨 𝘼𝙄 𝙟𝙪𝙨𝙩 𝙝𝙮𝙥𝙚? 𝙊𝙧 𝙞𝙨 𝙞𝙩 𝙩𝙝𝙚 𝙜𝙖𝙢𝙚 𝙘𝙝𝙖𝙣𝙜𝙚𝙧 𝙮𝙤𝙪𝙧 𝙗𝙪𝙨𝙞𝙣𝙚𝙨𝙨 𝙣𝙚𝙚𝙙𝙨?
Everyone’s talking about AI but is anyone really using it to create real value?
Most companies want to leverage AI. Few know 𝗵𝗼𝘄.
✅ What exactly should you ask to find real AI opportunities?
✅ Which AI techniques actually fit your business?
✅ Is your data even ready for AI?
If you’re not sure, you’re not alone. This is a condensed version of the slides I presented at a Linkedin webinar for Tecnovy on 28.04.2025.
What is Model Context Protocol(MCP) - The new technology for communication bw...Vishnu Singh Chundawat
The MCP (Model Context Protocol) is a framework designed to manage context and interaction within complex systems. This SlideShare presentation will provide a detailed overview of the MCP Model, its applications, and how it plays a crucial role in improving communication and decision-making in distributed systems. We will explore the key concepts behind the protocol, including the importance of context, data management, and how this model enhances system adaptability and responsiveness. Ideal for software developers, system architects, and IT professionals, this presentation will offer valuable insights into how the MCP Model can streamline workflows, improve efficiency, and create more intuitive systems for a wide range of use cases.
AI and Data Privacy in 2025: Global TrendsInData Labs
In this infographic, we explore how businesses can implement effective governance frameworks to address AI data privacy. Understanding it is crucial for developing effective strategies that ensure compliance, safeguard customer trust, and leverage AI responsibly. Equip yourself with insights that can drive informed decision-making and position your organization for success in the future of data privacy.
This infographic contains:
-AI and data privacy: Key findings
-Statistics on AI data privacy in the today’s world
-Tips on how to overcome data privacy challenges
-Benefits of AI data security investments.
Keep up-to-date on how AI is reshaping privacy standards and what this entails for both individuals and organizations.
Semantic Cultivators : The Critical Future Role to Enable AIartmondano
By 2026, AI agents will consume 10x more enterprise data than humans, but with none of the contextual understanding that prevents catastrophic misinterpretations.
Role of Data Annotation Services in AI-Powered ManufacturingAndrew Leo
From predictive maintenance to robotic automation, AI is driving the future of manufacturing. But without high-quality annotated data, even the smartest models fall short.
Discover how data annotation services are powering accuracy, safety, and efficiency in AI-driven manufacturing systems.
Precision in data labeling = Precision on the production floor.
Role of Data Annotation Services in AI-Powered ManufacturingAndrew Leo
Idoc script beginner guide
1. Idoc Script Syntax
Idoc Script Tags
Idoc Script commands begin with <$ and end with $> delimiters. For example:
<$dDocTitle$>
<$if UseGuiWinLook and isTrue(UseGuiWinLook)$>
Idoc Script Comments
You can use standard HTML comments or Idoc Script comments in Idoc Script code. An Idoc Script comment
begins with [[% and closes with %]] delimiters. For example:
<!-- HTML Comment -->
[[%My Comment%]]
----------------------------------------------------------------------------------------------------
Variables
A variable enables you to define and substitute variable values.
A value can be assigned to a variable using the structure:
<$variable=value$>
For example, <$i=0$> assigns the value of 0 to the variable i.
Variable values can also be defined in an environment resource (CFG) file using the following
name/value pair format:
variable=value
Idoc Script supports multiple clauses separated by commas in one script block.
For example, you can use <$a=1,b=2$> rather than two separate statements: <$a=1$> and <$b=2$>.
Referencing a Variable in a Conditional
The following structure can be used to evaluate the existence of a variable:
<$if variable_name$>
If the variable is defined, this conditional is evaluated as TRUE. If the variable is not defined or it is defined as an
empty (null) string, it is evaluated as FALSE.
--------------------------------------------------------------------------------------------------------
Functions
Idoc Script has many built-in global functions. Functions perform actions, including string comparison and
manipulation routines, date formatting, and ResultSet manipulation. Some functions also return results, such as
the results of calculations or comparisons.
Information is passed to functions by enclosing the information in parentheses after the name of the function.
Pieces of information that are passed to a function are called parameters. Some functions do not take
2. parameters; some functions take one parameter; some take several. There are also functions for which the
number of parameters depends on how the function is being used.
Personalization functions refer to user properties that are defined in personalization files, also called user topic
files. Each user's User Profile settings, personal links in the left navigation bar, and workflow in queue information
are all defined in user topic files, which are HDA files located in
the WC_CONTENT_ORACLE_HOME/data/users/profiles/us/username/ directories.
The following global functions reference user topic files:
"utGetValue"
"utLoad"
"utLoadResultSet"
For example, the Portal Design link in a user's left navigation bar is generated from the following code in
the pne_nav_userprofile_links include (located in
the WC_CONTENT_ORACLE_HOME/shared/config/resources/std_page.htm resource file). If
the portalDesignLink property in
the WC_CONTENT_ORACLE_HOME/data/users/profiles/us/username/pne_portal.hda file is TRUE, the link is
displayed:
<$if utGetValue("pne_portal", "portalDesignLink") == 1$>
<$hasUserProfileLinks=1$>
<tr>
<td colspan=2 nowrap align="left">
<a class=pneLink
href="<$HttpCgiPath$>?IdcService=GET_PORTAL_PAGE&Action=GetTemplatePage&Page=PNE_PO
RTAL_DESIGN_PAGE">
<$lc("wwPortalDesign")$></a>
<td>
</tr>
<$endif$>
---------------------------------------------------------------------------------------------------------------
Conditionals
A conditional enables you to use if and else clauses to include or exclude code from an assembled page.
Use the following Idoc Script keywords to evaluate conditions:
o <$if condition$>
o <$else$>
o <$elseif condition$>
o <$endif$>
Conditional clauses use this general structure:
<$if conditionA$>
<!--Code if conditionA is true-->
<$elseif conditionB$>
<!--Code if conditionB is true-->
<$else$>
<!--Code if neither conditionA nor conditionB are true-->
<$endif$>
3. A condition expression can be any Idoc Script function or variable.
For more information, see Section 2.3.2.5, "Referencing a Variable in a Conditional."
Boolean Operators can be used to combine conditional clauses. For example, you can use
the and operator as follows:
<$if UseBellevueLook and isTrue(UseBellevueLook)$>
If the condition expression is the name of a ResultSet available for inclusion in the HTML page, the
conditional clause returns true if the ResultSet has at least one row. This ensures that a template page
presents information for a ResultSet only if there are rows in the ResultSet.
A conditional clause that does not trigger special computation is evaluated using
the XXXXXXXXXXXX_cannot_cross-reference to a marker on a para in
a bable_XXXXXXXXXXXXXX prefix. The result is true if the value is not null and is either a nonempty
string or a nonzero integer.
For an example of conditional code, see Section 2.3.4.1, "Conditional Example."
2.3.4.1 Conditional Example
In this example, a table cell <td> is defined depending on the value of the variable xDepartment:
<$if xDepartment$>
<td><$xDepartment$></td>
<$else$>
<td>Department is not defined.</td>
<$endif$>
<$xDepartment=""$>
If the value of xDepartment is defined, then the table cell contains the value of xDepartment.
If the value of xDepartment is not defined or is an empty (null) string, a message is written as the
content of the table cell.
The last line of code clears the xDepartment variable by resetting it to an empty string.
Looping
Loop structures allow you to execute the same code a variable number of times. Looping can be accomplished in
two ways with Idoc Script:
ResultSet Looping
ResultSet looping repeats a set of code for each row in a ResultSet that is returned from a query. The name of
the ResultSet to be looped is specified as a variable using the following syntax:
<$loop ResultSet_name$>
code
<$endloop$>
The code between the <$loop$> and <$endloop$> tags is repeated once for each row in the
ResultSet.
When inside a ResultSet loop, you can retrieve values from the ResultSet using the getValue function.
Substitution of values depends on which row is currently being accessed in the loop.
When inside a ResultSet loop, that ResultSet becomes active and has priority over other ResultSets
when evaluating variables and conditional statements.
You cannot use the <$loop$> tag to loop over a variable that points to a ResultSet. Instead you must
loop over the ResultSet manually using the rsFirst and rsNext functions.
4. For example, you cannot use the following code to loop over a ResultSet:
<$name="SearchResults"$>
<$loop name$>
<!--output code-->
<$endloop$>
Instead, you must use the following code:
<$name="SearchResults"$>
<$rsFirst(name)$>
<$loopwhile getValue(name, "#isRowPresent")$>
<!--output code-->
<$rsNext(name)$>
<$endloop$>
ResultSet Looping Example
In this example, a search results table is created by looping over the SearchResults ResultSet, which was
generated by the GET_SEARCH_RESULTS service.
<$QueryText="dDocType <matches> 'ADACCT'"$>
<$executeService("GET_SEARCH_RESULTS")$>
<table>
<tr>
<td>Title</td><td>Author</td>
</tr>
<$loop SearchResults$>
<tr>
<td><a href="<$SearchResults.URL$>"><$SearchResults.dDocTitle$></a></td>
<td><$SearchResults.dDocAuthor$></td>
</tr>
<$endloop$>
</table>
While Looping
While looping enables you to create a conditional loop. The syntax for a while loop is:
<$loopwhile condition$>
code
<$endloop$>
If the result of the condition expression is true, the code between
the <$loopwhile$> and <$endloop$> tags is executed.
After all of the code in the loop has been executed, control returns to the top of the loop, where
the condition expression is evaluated again.
o If the result is true, the code is executed again.
o If the code if the result is false, the loop is exited.
While Looping Example
In this example, a variable named abc is increased by 2 during each pass through the loop. On the sixth pass
(when abc equals 10), the condition expression is no longer true, so the loop is exited.
<$abc=0$>
<$loopwhile abc<10$>
<$abc=(abc+2)$>
<$endloop$>
Ending a Loop
There are two Idoc Script tags that will terminate a ResultSet loop or while loop:
5. <$endloop$> returns control to the beginning of the loop for the next pass. All loops must be closed
with an <$endloop$> tag.
<$break$> causes the innermost loop to be exited. Control resumes with the first statement following
the end of the loop.
Workflow Admin
In the Workflow Admin tool, you can use Idoc Script to define the following:
step events
jump messages
extra exit conditions
tokens
custom effects for jumps
For example, the following step entry script sends documents in the Secure security group to the next step in
the workflow:
<$if dSecurityGroup like "Secure"$>
<$wfSet("wfJumpName", "New")$>
<$wfSet("wfJumpTargetStep", wfCurrentStep(1))$>
<$wfSet("wfJumpEntryNotifyOff", "0")$>
<$endif$>
--------------------------------------------------------------------------------------------------------------------------------------
#active <$#active.variable$> Retrieves the value of the specified variable from the DataBinder,
searching in the following default order:
1. Active ResultSets
2. Local data
3. All other ResultSets
4. Environment
Does not send an error report to the debug output if the variable is not
found.
#local <$#local.variable$> Retrieves the value of the specified variable from the local data. Does not
send an error report to the debug output if the variable is not found.
#env <$#env.variable$> Retrieves the value of the specified variable from the environment
settings. Does not send an error report to the debug output if the variable
is not found.
exec <$exec expression$> Executes an expression and suppresses the output (does not display the
expression on the page).
In earlier versions of Idoc Script, the exec keyword was required to
suppress the value of any variable from appearing in the output file. In
the current version, the exec keyword is needed only to suppress
an expression from appearing in the output file.
include <$include ResourceName$> Includes the code from the specified resource. For more information,
see Section 2.3.1, "Includes."
super <$include
super.<include>$>
Starts with the existing version of the include code. For more information,
see Section 2.3.1.2, "Super Tag."
6. - exec Keyword
The exec keyword executes an Idoc Script expression and suppresses the output (does not display the
expression on the page). It is primarily used to set variables without writing anything to the page.
In earlier versions of Idoc Script, the exec keyword was required to suppress the value of any variable from
appearing in the output file. In the current version, the exec keyword is needed only to suppress an expression
from appearing in the output.
For example, the first line below is equivalent to the last two lines:
<$varA="stringA", varB ="stringB"$>
<$exec varA="stringA"$>
<$exec varB="stringB"$>
eval Function
The eval function evaluates an expression as if it were actual Idoc Script.
In the following example, a variable named one is assigned the string Company Name, and a variable
named two is assigned a string that includes variable one.
<$one="Company Name"$>
<$two="Welcome to <$one$>"$>
<$one$><br>
<$two$><br>
<$eval(two)$>
In the page output, variable one presents the string Company Name, variable two presents the string Welcome
to <$one$>, and the function eval(two) presents the string Welcome to Company Name.
Note that the string to be evaluated must have the Idoc Script delimiters <$ $> around it, otherwise it will not be
evaluated as Idoc Script.
Also note that too much content generated dynamically in this manner can slow down page display. If
the eval function is used frequently on a page, it may be more efficient to put the code in an include and use
the inc Function in conjunction with the eval function.
Metadata Field Naming
Each metadata field has an internal field name, which is used in code. In addition, many fields have descriptive
captions which are shown on web pages.
All internal metadata field names begin with either a d or an x:
o Predefined field names begin with a d. For example, dDocAuthor.
o Custom field names begin with an x. For example, xDepartment.
Workflow Functions
wfSet
Sets a key with a particular value in the companion file.
Parameters
Takes two parameters:
7. The first parameter is the key.
The second parameter is the value.
Example
Sets the key wfJumpName to MyJump:
<$wfSet("wfJumpName", "MyJump")$>
--------------------------------------------------------------------------------------------------------------------------------------
WfStart
Sends the revision to the first step in the current workflow. Note that this variable begins with an
uppercase W.
Example
Sets the target step for a jump to restart the workflow:
<$wfSet("wfJumpTargetStep",WfStart)$>
--------------------------------------------------------------------------------------------------------------------------------------
wfCurrentSet
Sets the local state value of a key in the companion file.
Parameters
Takes two parameters:
The first parameter is the key.
The second parameter is the value.
Example
Sets the key <step_name>@<workflow_name>.myKey to myValue:
<$wfCurrentSet("myKey", "myValue")$>
wfCurrentGet
Retrieves a local state value from the companion file.
Parameters
The only parameter is the key.
Output
Returns the local state value from the companion file.
Example
8. Returns the value of the local key <step_name>@<workflow_name>.myKey:
<$wfCurrentGet("myKey")$>
--------------------------------------------------------------------------------------------------------------------------------------
wfAddUser
Adds a user, alias, or workflow token to the list of reviewers for a workflow step. This function can only be used
inside a token.
Parameters
Takes two parameters:
The first parameter indicates the user name, alias, or token name.
The second parameter indicates the type, either user or alias.
Example
Adds the user mjones as a reviewer:
<$wfAddUser("mjones", "user")$>
Adds the original author token and the hr alias as reviewers:
<$wfAddUser(dDocAuthor, "user")$>
<$wfAddUser("hr", "alias")$>
wfComputeStepUserList
Computes the list of users from the current step in the workflow.
Returns a comma-delimited list of users.
wfExit
Exits a workflow step. This function moves the revision to a particular step in a workflow according to the
function parameters and resets the parent list information. To completely exit a workflow,
use wfExit(100,100) or any parameters that ensure that the revision returns to the parent workflow and then
gets moved past the last step in that workflow.
Parameters
Takes two parameters:
The first parameter indicates the number of jumps to rewind.
9. The second parameter indicates the target step relative to the step determined by the first parameter.
Example
Exits to the parent step in the workflow:
<$wfExit(0,0)$>
Returns to the previous jump step:
<$wfExit(1,0)$>
Returns to the previous jump step and moves to the next step in that workflow:
<$wfExit(1,1)$>
--------------------------------------------------------------------------------------------------------------------------------------
wfGet
Retrieves a state value from the companion file.
Parameters
The only parameter is the state key.
Output
Returns the state value from the companion file.
Example
Returns the current jump name:
<$wfGet("wfJumpName")$>
--------------------------------------------------------------------------------------------------------------------------------------
WfStart
Sends the revision to the first step in the current workflow. Note that this variable begins with an uppercase W.
Example
Sets the target step for a jump to restart the workflow:
<$wfSet("wfJumpTargetStep",WfStart)$>
--------------------------------------------------------------------------------------------------------------------------------------
wfUpdateMetaData
Defines a metadata value for the current content item revision in a workflow.
10. The wfUpdateMetaData function can be used only for updating custom metadata fields. You cannot use this
function to update standard, predefined fields
Type and Usage
Section 3.8.1.1, "Workflow Functions"
Section 4.33, "Workflow"
Example
Defines "This is my comment." as the value of the Comments field:
<$wfUpdateMetaData("xComments", "This is my comment.")$>
--------------------------------------------------------------------------------------------------------------------------------------
wfNotify
Sends an e-mail message to a specified user, alias, or workflow token.
The wfMailSubject and wfMessage variables can be set to customize the notification message.
Parameters
Takes two parameters and an optional third parameter:
The first parameter specifies the user name, alias, or token to be notified.
The second parameter indicates the type, either user, alias or token.
The optional third parameter specifies the name of the e-mail template to use for constructing the
message. (See the IdcHomeDir/resources/core/templates/templates.hda file for template definitions.)
Example
Notifies the original author:
<$wfNotify(dDocAuthor, "user")$>
Notifies all users in the myAlias alias, using the IdcHomeDir/resources/core/templates/reject_mail.htm file as a
template:
<$wfNotify("myAlias", "alias", "WF_REJECT_MAIL")$>