#AppFramework
Explore tagged Tumblr posts
Text
0 notes
Text
Best 11+ top iOS app development frameworks 2024
Explore the latest in iOS app development with our guide to the top frameworks of 2024. Choose the right technologies to build feature apps.
Read More:
#iOSDevelopment#AppFrameworks#TechInnovation#MobileAppDevelopment#iOSDevTools#SwiftLang#Xcode#CodingCommunity#DeveloperResources#AppDev2024#TechTrends#TopFrameworks#MobileApps#InnovationHub#CodeLife
0 notes
Text
Visit #jaiinfoway www.jaiinfoway.com for “Mobility Matters: The 7 Must-Know Frameworks for Developing Mobile Apps in 2023”
Read more; https://medium.com/@intelligentblock2018/mobility-matters-the-7-must-know-frameworks-for-developing-mobile-apps-in-2023-93fb851c60fa
#smallbusinessowneruk#startupgrowth#businessgrowthstrategy#MobileAppDevelopment#CrossPlatformApps#AppFrameworks#ReactNative#Flutter#Ionic#Xamarin#PhoneGap#NativeScript#AppDevelopment#MobileApps#iOS#Android#AppDesign
0 notes
Text
Progressive Web App Framework
Discover the full potential of your digital products and services with Digital Engineering and Design Thinking - the perfect blend of technology, user experience, and design that creates remarkable solutions. At HyScaler, we empower your business with cutting-edge technology services, helping you get to the future of success. Visit: Progressive web appframework
0 notes
Photo
Frameworks are tools that developers use to create mobile apps. Top mobile app development frameworks allow app developers to cut through the technicalities of development by enabling them to write code once and then quickly deploy it across multiple platforms.
Check out a discussion of top mobile app development frameworks which you can use in 2022 at https://bit.ly/3zfxxhL
0 notes
Text
5 tips for choosing the right mobile app development framework
One of the most often asked topics in recent years is “Which framework is the ideal match for mobile app development?” It doesn’t matter if you need a gaming app or a retail app—what matters is that you have the correct solution in place to help you realize your company goals.
We all have access to applications, and we spend 70% of our day using them to satisfy our requirements. And even you must concur with this assertion. You may have wondered, though, “how startups evolved digitally.” What supports online app development for mobile devices? The finest mobile app experiences have always been delivered by using the appropriate development tools, libraries, and frameworks while creating a unique app.
What Is a Framework for Mobile App Development?
A framework provides an essential framework for the execution of programs. These are the set of tools that aid app developers in creating the most reliable, secure, and effective applications. You also need to be aware of the many categories of applications before you start narrowing down your choices.
Web Apps
The main distinction between web applications and native apps is that web apps may be accessed using both internet browsers and mobile apps. They are browser-based responsive applications created in programming languages like CSS and JavaScript.
Native Apps
Such programs are mostly made for mobile operating systems and gadgets. An app may be created using native coding both for iOS and Android.
Choosing the right framework
Let’s examine the elements that might assist you in choosing the finest framework for developing mobile applications:
To satisfy the needs of your audience, research is essential.
You need a thorough awareness of the industry, the community you want to reach, the needs of today’s consumers, and the most recent trends if you want to create a top-notch mobile app. Having thorough market research may help you offer insightful explanations of how well-known apps are performing in the marketplace. This makes it much easier for you to handle consumer issues.
Next, it’s important to keep up with the most recent issues and innovations in the mobile sector. This will undoubtedly assist you in creating an application that is strong and highlighted enough to produce excellent results.
The average cost of developing a mobile application
One of the key considerations when engaging in mobile application solutions is cost. It depends on whether you’re employing an internal developer or an outside contractor. The sort of app you want, the features you want, and the in-app functionalities you want will all depend on your industry and the cost of development.
Features That Will Strengthen Your App
Every feature you provide in your app will operate differently on Android and iOS. Let’s say you decide on the cross-platform application. In such a scenario, characteristics like quick loading times, easy navigation, adaptability, security features, clever search filters, notifications/alerts, etc., should be on your list.
Speed consideration is still another important element.
When choosing a framework, an app’s speed is a key consideration. Like websites, apps must operate quickly enough to keep up with user demand. For usability, almost all program types require maximum performance. Swift and Java-created applications have better performance and load pages more quickly.
Why is it crucial to target the right group of people?
They are the people who your company will provide with goods or services.
Finding the appropriate audience is essential when choosing a suitable framework. The choice of the target market is absolutely essential to a mobile app’s success.
Apple users are less likely to install software than smartphone users.
When choosing a mobile app framework, a variety of industry norms should be taken into account. Let’s talk about a few of them:
Consideration of Speed
Mobile applications, both native and cross-platform, must operate as quickly and effectively as web pages. This is necessary for practically all apps, but it’s especially important for gaming apps because they need a particular level of power and performance to function.
Support for Platform Features
Many of the mobile apps available today are cross-platform, meaning they can run on several platforms without needing to be specifically coded for each one.
Security Hazard
Mobile applications, which utilize a mix of security flaws, Wi-Fi security, and mobile network security, are steadily becoming more popular in an era of escalating data breaches.
Following Launch Updates
Select a framework that streamlines all future, routine maintenance workflows of the app once it is deployed when deciding on the best mobile application framework to utilize.
Boost Efficiency
The software application framework should be chosen, and working within the parameters of a system’s thin code pattern may assist developers in creating the most efficient mobile applications.
Conclusion
Choosing a framework for mobile application development is a crucial step that requires considering a lot of different factors. The most important aspects of developing a mobile app include the app’s purpose, its requirements, and major challenges, as well as the most notable advantages of the framework. If you have any mobile app development queries or requirements, please feel free to drop us a text rightaway!
Tags:
appframework, mobile app development, product engineering
0 notes
Text
ERWEITERTES AUTHENTIFIZIERUNGS-PLUG-IN DOWNLOADEN
Das Rubrik-Bewertungsplugin speichert keine persönlichen Daten. Das Plugin für Anzahl der Fehlör speichert keine persönlichen Daten. Das Datenschutz-Untersystem speichert selber keine Daten. Das Live-Logdaten-Plugin speichert keine persönlichen Daten. Das Plugin für Kommentare speichert keine persönlichen Daten. Die Menüfeldkomponente speichert selber keine persönlichen Daten.
Name: erweitertes authentifizierungs-plug-in Format: ZIP-Archiv Betriebssysteme: Windows, Mac, Android, iOS Lizenz: Nur zur personlichen verwendung Größe: 16.59 MBytes
Das Plugin erewitertes speichert keine personenbezogenen Daten. Der Block ‚Aktuelle Termine‘ zeigt nur existierende Kalenderdaten an. Dieses Plugin verfügt über keine Datenbank zur Speicherung von Nutzerdaten. Das Themen-Kursformat-Plugin speichert keine persönlichen Daten. AppStudio AppFramework stellt ein Authentifizierungs-Plug-in bereit, das Benutzer über ihre biometrische Signatur auf unterstützten Geräten authentifiziert.
Beachten Sie dabei, dass message festgelegt werden muss, bevor authenticate aufgerufen werden kann. Der Block ‚Aktuelle Termine‘ zeigt nur existierende Kalenderdaten an.
Das Plugin für den Kompetenzen-Bericht speichert keine persönlichen Daten. Das Serverdateien-Repository-Plugin speichert keine persönlichen Autgentifizierungs-plug-in.
VMware vCenter 5.5 in Active Directory integrieren
Das Plugin ‚Kompetenzraster improtieren‘ speichert keine personenbezogenen Daten. Das MNet-remote-Einschreibungsplugin speichert keine persönlichen Daten.
youtube
Das folgende Codebeispiel verwendet authentifizierungsplug-in Eigenschaften authentifiziwrungs-plug-in und errorMessageum anzuzeigen, ob diese Funktion unterstützt wird.
Weitere Authenrifizierungs-plug-in Technisches Webinar: Das Plugin ‚Ohne-Authentifizierung‘ speichert keine personenbezogenen Daten. Das Log-Daten-Plugin speichert keine persönlichen Daten. Die Menüfeldkomponente speichert selber keine persönlichen Daten.
Authentifizierungs-plugg-in POP3 server authentication plugin does not store any personal data. Die Unoconv-Dokumentenkonvertierung speichert keine persönlichen Daten. Forms subsystem itself does not store any personal data. Das Sicherheits-Übersichts-Plugin speichert keine persönlichen Daten. Auhentifizierungs-plug-in Bericht zu Einzelbewertungen zeigt nur Daten, die an anderer Stelle gespeichert sind.
Das Kursdatei-Repository speichert und überträgt keine persönlichen Daten. Bevor man mit der Anbindung von vCenter an das Active Directory beginnt, sollte man ein paar Voraussetzungen prüfen. Das Vimeo-Mediaplugin speichert kein persönlichen Daten.
youtube
Leer wenn Rollen manuell zugewiesen werden. Die manuelle Bewertung des Frageverhalten-Plugins speichert keine persönlichen Daten.
VMware-Forum
Die Anmeldung mit einem AD-Konto an vCenter kann man zusätzlich vereinfachen, indem man die neu hinzugefügte Identitätsquelle als Standard-Domäne festlegt. Die Einbettung von Medien speichert keine egweitertes Daten. In diesem Thema Biometrischer Authentifizierer.
youtube
AppStudio AppFramework stellt ein Authentifizierungs-Plug-in bereit, das Benutzer über ihre biometrische Signatur auf unterstützten Geräten authentifiziert. Das Plugin Textfeld speichert keine personenbezogenen Daten. Das Plugin ‚Voraussetzung Gruppe‘ speichert keine personenbezogenen Daten.
Installieren des VMware Plug-Ins für erweiterte Authentifizierung
Der Block Mentoren zeigt nur Daten an, die an anderen Orten gespeichert sind. Das Plugin für Anzahl der Fehlör speichert keine persönlichen Daten. Im folgenden Codebeispiel wird neben einer angegebenen Nachricht gezeigt, wie die authenticate -Methode verwendet wird:. Beurteilen mit Kommentaren und Punkten.
„Windows-Sitzungsauthentifizierung verwenden“ nicht möglich ohne AD? – VMware-Forum
Das Design Clean speichert keine personenbezogenen Nutzerdaten. Er speichert selbst keine Daten. Das Plugin ‚Buch Kapitelimport‘ speichert keine personenbezogenen Daten.
Bewertungen, Einschreibungen und Aktivitätsdaten.
The post ERWEITERTES AUTHENTIFIZIERUNGS-PLUG-IN DOWNLOADEN appeared first on Mezitli.
source http://mezitli.info/erweitertes-authentifizierungs-plug-in-84/
0 notes
Text
What’s New in AppStudio 3.1 (September, 2018)
AppStudio for ArcGIS 3.1 includes a brand new AppStudio Player as well as important updates to Desktop, Appframework, and app templates. from ArcGIS Blog https://ift.tt/2OxBLHq
0 notes
Text
リッチ・テキスト・サポートを無効にする
Maximo V7.5より詳細説明(Long Description)フィールドなどでリッチ・テキストがサポートされ、文字に様々な装飾が追加できるようになりました。しかし、旧来のユーザーなどで、どうしてもこのオプションを外したい場合があるかと思います。その場合、以下の方法で設定を解除することができます。
アプリケーション・デザイナーを開きます
アクションの選択メニューからシステムXMLのエクスポートを実行します
LIBRARYをダウンロードします
以下のように書き換えます
https://gist.github.com/nishi2go/9fe46d09057dd9806e86
LIBRARY.XMLをインポートします
0 notes
Text
AppStudio for ArcGIS version 2.1 is Now Available!
We’re pleased to announce that version 2.1 of AppStudio for ArcGIS is now available. This release includes new features and productivity tools to help you quickly create beautiful apps to share to the public or deploy throughout an organization.
You can get the new version of AppStudio by logging into http:appstudio.arcgis.com or downloading AppStudio Desktop and Player from the download page.
So What’s New in AppStudio 2.1?
New Material Design Layouts
New Community Panel in AppStudio Desktop
Updated AppStudio Templates
New ApprFramework plugins (in Beta):
Biometric Authentication
Secure Storage
High-Accuracy Positioning
Interapp Communication (share text and URLs with other apps)
UI/UX updates to AppStudio Desktop tools
AppStudio Player supports biometric authentication and Integrated Windows Authentication (IWA)
Support Universal Windows Platform (UWP) app
More…
To get more details see our posts on GeoNet
New Material Design Layouts
Material Design is a visual and interactive design standard developed and used by Google. With AppStudio 2.1 we have released five brand new beautiful ready-to-use layouts based on Material Design Guidelines. These layouts will not only save you time, but will also help you to create apps with a refined and professional look and feel. Please read this blog post to learn more about Material Design layouts.
Community Panel
We have implemented a new community panel in the AppStudio Desktop. The Community Panel provides live links to AppStudio Geonet questions, blogs, YouTube, and tweets so you can easily access and engage with the AppStudio Team and community.
Updated AppStudio Templates
Based on user feedback our easy-to-configure AppStudio app templates have also received an number of improvements.
The Quick Report Template includes a new calendar control, ability to annotate (sketch/label) on top of photo attachments, and upload support for video and audio clips.
The Map Viewer Template has improve charts, can now display map grids, view secured services, and works offline with support for Mobile Map Packages. (note: Offline Mobile Map Package support requires user to login with ArcGIS Account).
The Map Tour Template includes a new side panel, numeric labels on the map pins, and pinch-to-zoom when interacting with Map Tour images.
New AppFramework plugins (Beta) :
AppStudio 2.1 includes some great new additions to the AppFramework that add important functionality our users have asked us to include and yes, they work cross platform. (Note: these feature are currently in Beta).
The Biometric Authentication plugin provides support of login methods such as fingerprint readers and Windows Hello. (Android support coming in a future release)
The Secure Storage plugin offers a location to securely store data such user passwords or tokens.
The High-Accuracy Positioning plugin will enable you to bring in NMEA information form external GPS receivers into your app.
The Interapp Communication plugin is for sharing information (currently text and URLs) with other apps running on the device using the native sharing capability of the platform.
Learn More
Visit the AppStudio Group on GeoNet to Learn About AppStudio 2.1
Want to learn how to write custom apps with AppStudio? You can watch recordings of our 2-Day AppStudio Workshop online.
To see examples of some of the great apps that have been created with AppStudio for ArcGIS visit the AppStudio Showcase.
We can’t wait to see the awesome apps you create with AppStuido 2.1.
–The AppStudio Team
By Chris LeSueur and Tina Jin
from ArcGIS Blog http://ift.tt/2z7UEKa
0 notes
Text
AppStudio for ArcGIS version 2.0 is Now Available!
We’re pleased to announce that version 2.0 of AppStudio for ArcGIS is now available. This is our biggest release since we introduced just AppStuidio2 years ago. We are committed to making this platform a more powerful, efficient, and user-friendly tool for creating native apps. We want to say thank you to our users for all the great feedback on this product. Version 2.0 includes new capabilities, updated developer tools, and a fresh new look and feel.
You can get the new version of AppStudio by logging into http:appstudio.arcgis.com or downloading AppStudio Desktop and Player from the download page.
So what’s new in AppStudio v2.0?
Here’s an overview, to get more details see our posts on GeoNet
Support for the latest ArcGIS Runtime 100.1
A completely redesigned AppStudio Desktop user interface
New app developer capabilities (beta) – Local Notification, Vibration & Background location, SQL Storage and Promises
The Map Viewer template has been redesigned from the ground up
The Quick Report template includes many new enhancements
Updated AppStudio Player app
AppStudio Framework API and guide documentation is now available online
ArcGIS Runtime Version 100.1 support
Something many of our users have been asking for and the most impactful enhancement in 2.0 is support for latest ArcGIS Runtime 100x. With the new runtime, you can leverage Vector Tiles, 3D scenes, local Raster data, offline Mobile Map Packages, and more in AppStudio your apps. However, we did not forget about your existing apps built on the 10.2.x version of Runtime, in fact, we went a step further by supporting both runtimes side by side.
New Look and Feel for AppStudio Desktop
AppStudio for ArcGIS 2.0 Desktop has a cool new UI tailored to improve your app development experience and efficiency. There is new side panel to give you quick access to the tools you use most. Two new tools included in the side panel are the “Open Online Item” and a QR code generator so you can quickly download an app to your device running AppStudio Player. The user interface is now customizable with the choice of light and dark themes, normal and large card sizes, and the ability position side panel to the left and right. And we improved the way you search for apps and samples, not only can you use #tag search for apps tagged with a term or @username for apps created by a specific user, but you can also filter apps based on the app ownership, location, and status.
Updated App Templates
The Map Viewer Template has a clean and intuitive new interface using the Material design controls. The new and improved Map Viewer Template provides an immersive and adaptive display for all screen sizes and tailored for better user experience. The template also improves on pop-up support, geosearching (within and outside the extent of the map), feature searching, and support for map layers. And we have included a new basemap switcher and map units selection tool.
The Quick Report Template has also been updated with a new camera module, map view, light/dart themes, font sizes and the option to download a Mobile Map Package and work offline.
New Developer Capabilities
To help you build powerful and modern native apps we have introduced several new AppFramework plugins. We now offer plugins for Local Notification, Vibration, Background Location, Promises and SQL Storage. These capabilities are currently in Beta, to learn more see this blog post on GeoNet.
Learn More About AppStudio 2.0
As you can see this is a big update. To get more details about all the new features in AppStudio version 2.0 see the follow blog posts on GeoNet.
What’s new in AppStudio Desktop Version 2.0
What’s new in Templates – AppStudio for ArcGIS Version 2.0
What’s new in AppStudio Player for ArcGIS Version 2.0
Introduction to Beta features in AppStudio 2.0
And checkout our new AppStudio App Showcase to see what people are building with AppStudio for ArcGIS.
By Chris LeSueur and Tina Jin
from ArcGIS Blog http://ift.tt/2usveU8
0 notes
Text
MaximoのSQL文法
Maximoは非常にDatabaseに依存した製品です。基本的にデータベース製品のSQL文法はそのままMaximoでも使うことができます。テーラリングやカスタマイズでもWhere文節を駆使することで柔軟なアプリケーションの制御が可能になっています。従ってMaximoの技術習得にはSQLを理解することが重要な要素になります。しかし、Maximo固有のSQLがわかりづらいと言った声もあります。
MaximoのSQL文法を習得するには以下のことが念頭にあれば十分です。 1. select, delete, insert, updateはユーザーが指定するのではなくFrameworkが制御する 2. ":" (コロン) 変数 3. "." (ドット) 関係変数
1は説明不要ですので、2, 3について下にまとめてみました。
":"+変数と入力することで様々な機能を使うことができます。以下の例はすべて資産(ASSET)を対象としています。
文法 説明 例 結果 :属性名 現在のオブジェクトの属性値に置換します assetnum = :assetnum assetnum = ‘11134’ :YES Boolean値の真に置換します isrunning = :YES isrunning = 1 :NO Boolean値の偽に置換します isrunning = :NO isrunning = 0 :&date& 現在の日付に変換します installdate = :&date& installdate = ‘2013-06-27’ :&datetime& 現在の日付に変換します changedate = :&datetime& changedate = ‘2013-06-27 12:00:00’ :time 現在の日付に変換します changedate = :time changedate = ‘12:00:00’ :&personid& 現在ログインしてるユーザーのpersonidに置換します movedby = :&personid& movedby = ‘MAXADMIN’ :&username& 現在ログインしているユーザーのログインIDに置換します movedby = :&username& movedby = ‘maxadmin’ :&appname& 現在使用しているアプリケーション名に置換します :&appname& = ‘ASSET’ 'ASSET' = 'ASSET' :&mboname& 現在使用しているオブジェクト名に置換します :&mboname& = ‘ASSET’ 'ASSET' = 'ASSET' :&ownername& 現在使用しているオブジェクトの親オブジェクト名に置換します :&ownername& = ‘WORKORDER’ 'WORKORDER' = 'WORKORDER' :&hostname& 現在アクセスしているホスト名に置換します :&uniqueid& 現在使用しているオブジェクトの固有IDに置換します assetuid = :&uniqueid& assetuid = 54 :sitefiltering 現在ログインしているユーザーのアクセス可能なサイトにフィルターします :sitefiltering siteid in (���BEDFORD’, ‘MCLEAN’) ※ :orgfiltering 現在ログインしているユーザーのアクセス可能な組織にフィルターします :orgfiltering orgid in (‘EAGLENA’, ‘EAGLESA’) ※ :&domainfilter&_ 英数字(ALN)ドメインで組織・サイトでアクティブなフィルター用リストを作成します status in (&domainfilter& _STATUS) status in(‘ACTIVE’,’NOT READY’) :&synonymlist&_ domain[value1, value2, …] シノニムドメインでフィルター用リストを作成します status in (:&synonymlist&_ LOCASSETSTATUS [ACTIVE]) status in(‘ACTIVE’, ‘OPERATING’)
※ 擬似コードです。正確な出力結果ではありません。
"."で関係(データベースの構成アプリケーションを参照)をつなぐことで異なるオブジェクトの値を取得することができます。関係だけを記述しても正しく動作しません。末尾は属性名にする必要があります。また、複数の値が関係式で出力される場合は先頭行の値になりますので注意が必要です。
文法 説明 例 結果 :関係名.属性名 関係から属性値を取得し置換します assetnum = :asset_parent.assetnum assetnum = ‘11134’ :&owner&.関係名.属性名 MBOの呼び出し元オブジェクトを取得します priority > :&owner&.priority priority > 3 $old_属性名 属性の上書き前の値を取得します usage != :asset_parent.$old_usage usage != ‘SW’
2 notes
·
View notes
Text
MAXLOOKUPMAPを使ったルックアップ
以前のブログでテーブル・ドメインを利用したルックアップの作成方法について解説しました。実は前回の設定ではソースとターゲットが同じカラムを定義してあるのを前提としています。もし、全く違うカラムを関連づけようとするとエラーになってしまいます。その関係づけを行うテーブルがMAXLOOKUPMAPテーブルです。
ルックアップとは簡単に説明すると外部キー参照の値リスト呼び出しです。従って呼び出し元のオブジェクトと呼び出し先のオブジェクトを関係づけする必要があります。
ルックアップの関連付けは以下のルールに従って行われます。前回はこのルールに合致していたた項目があったためMAXLOOKUPテーブルを使う必要がありませんでした。
ソースのプライマリー・キーとターゲットのプライマリー・キーを比較して一致した場合、それをルックアップの参照に使用
上記がマッチしない場合、ターゲットにソースの属性名と同じ属性名が存在する場合、それをルックアップの参照に使用
上記がマッチしない場合、参照先の主キーと同じオブジェクト属性を持つ属性を検索し一致する属性が存在する場合、それを外部キー参照に使用
上記以外の場合、MAXLOOKUPMAPテーブルを参照して関連付け
つまり参照元と参照先オブジェクトの外部キーがある程度一致している場合、自動でルックアップを作成しますが、特に手がかりとなる情報がない(主キー(ASSETNUM, SITEIDなど)の名前が一致しない、同じオブジェクト属性の属性がないなど)はMAXLOOKUPMAPテーブルで明示的に関連付けする必要があります。
それではMAXLOOKUPMAPテーブルの設定方法について説明します。
まずは「リンク先」-「システムの構成」-「プラットフォームの構成」-「データベースの構成」を開きます。参照元のオブジェクトを開き、起点となる属性を見つけるか作成します。今回は"ASSETREF"という新しいオブジェクトを作成します。必要な属性は以下の通りです。
"ASSETREF"というテーブル・ドメインを作成し、属性"REFID"のドメインにセットします。
オブジェクトを保存後、その行に編集アイコンがありますので、それをクリックしてダイアログを編集します。それぞれのカラムの意味は以下の通りです。
TARGET – 参照先のオブジェクト名
LOOKUPATTR – 値リストをバインドする属性
TARGETATTR – 値リストから選択した値をセットする属性名
SOURCE – TARGETATTRにセットする参照先の属性
SOURCEKEY – 参照元の外部キー
SEQNUM – 複数キーを参照に加える際の順序
ALLOWNULL – 参照先の値が見つからない場合でもTARGETATTRに入力することを許可する。通常ならば、ユーザーがルックアップを介さず直接フィールドに値を入れた場合に参照先にレコードが存在しなければならない。
以下のように入力します。
これで設定は完了です。もしMAXLOOKUPMAPを設定していない場合は以下のようなエラーが出ます。
ちゃんと設定されている場合は以下のように参照されます。
0 notes
Text
アプリケーション・フレームワークとしてのMaximo (その5)
前回はMaximoのデータベース構成について手順を解説しました。今回はテーブルを操作できるUIを作成してみたいと思います。画面で活躍するツールは「アプリケーション・デザイナー」です。デフォルトで提供されているUI部品をドラッグ・アンド・ドロップでデザインすることができます。こちらも特別なIDEなどは必要とせず、ブラウザーさえあれば使用することができます。今回は前回作成したBBSテーブルを操作するアプリケーションを作成します。
「リンク先」-「システムの構成」-「プラットフォームの構成」-「アプリケーション・デザイナー」を開きます。新規作成ボタンを押し、表示されたダイアログ・ボックスに以下の情報を入力します。
前回「メイン・オブジェクト」フラグについて説明しましたが、ここでその知識が生きてきます。ここの「メイン・オブジェクト」フィールドにはフラグが着いているオブジェクトしか選択できません。「モジュール名」を選択するとリンク先のどのディレクトリにリンクが作られるか選択できます。今回は"管理"の下に作成するので"SETUP"を選択しました。資産関連のアプリケーションであれば"ASSET"を指定すればいいです。
OKボタンをクリックすると、ワークスペースが現れます。今回は以下のようにテーブル・カラムを追加設定しました。カラムの追加はツールバーからコントロール・パレットを呼び出し、テーブル・カラムを対象のテーブルへドラッグ・アンド・ドロップします。
カラムを追加するとまず"Invalid Binding"(不整合)と表示されます。そのカラムをクリックし、ツールバーからプロパティーをクリックすると、以下のようなダイアログ・ボックスが表示されます。この「属性」フィールドに属性値を入力するとカラムに属性がバインドされます。"Invalid Binding"が消えない場合はいったん保存し、もう一度読み込み直すなどで直る可能性があります。
"List"、 "Main"と2つのタブが表示されていますので、"Main"タブを開き編集します。編集の方法は先ほどと変わりません。必要な項目をコントロール・パレットからドラッグ・アンド・ドロップで入力します。フィールドを配置して、属性をバインドすると自動的に属性の長さに合わせてフィールド・ボックスの大きさが変化します。また、今回コメント入力欄はリッチテキスト・エディターを使用しています。こちらを利用することで、文字の装飾や画像をつけることができます。また下部にはその投稿に対するコメントを入力するテーブルを設けます。こちらは前回作成した"BBSCOMMENT"テーブルをバインドします。
テーブルにオブジェクト(DBテーブル)をバインドさせるにはテーブルのプロパティーを開き、「関係」フィールドに"BBS"と"BBSCOMMENT"をつなぐ関係を設定します。「上位階層のデータ・ソースID」を空のままにしておくとアプリケーション作成時の「メイン・オブジェクト」に指定したオブジェクトが自動的に上位階層オブジェクトになります。もし、子テーブルから孫テーブルを参照したい場合は、子テーブルの「データ・ソースID」を孫テーブルの「上位階層のデータ・ソースID」に入力して、関係を入力します。
次にコメントを挿入できるようにします。テーブルに「ボタン・グループ」をドラッグアンドドロップします。ボタンのプロパティーを開きイベントに"addrow"と入力します。これで新規コメントが挿入できるようになります。しかし、この時点では親のID(BBSID)が子の"BBSID"属性にひも付いていないため、コメントを正しく挿入することができません。これを解消するには「デフォルト値」コントロールをテーブルにドラッグ・アンド・ドロップします。プロパティーを呼び出し、属性に"BBSID"と入力します。これは子テーブルの親IDを格納する属性です。次にデータ・ソースIDからに"MAINRECORD"を指定します。これはアプリケーション作成時に指定した「メイン・オブジェクト」を意味する予約語です。「属性から」に"BBSID"をセットします。こちらは親テーブルのIDです。これにより親のIDが子の"BBSID"属性に新規行をクリックしたときに自動的に入力されます。
これでアプリケーションの作成は終了です。実際に動作している画面は以下の通りです。
投稿日と投稿者は自動入力され、コメントは装飾がつけられるようになっています。作成したアプリケーションの定義ファイルを添付しますので、実際に動作させてみて確認してください。定義はツールバーのインポート・ボタンからインポートすることができます。
アプリケーションXML
1 note
·
View note
Text
アプリケーション・フレームワークとしてのMaximo (その4)
前回までで大まかなフレームワークの構成を説明しました。今回は実際にアプリケーションを作成してみることにします。
アプリケーション作成でまず行わなければならないことはデータベースの構成です。データの構成さえ決まってしまえば画面の作成はそれほど苦でもありません。今回は簡単な掲示板アプリをMaximo上で実現してみたいと思います。まずはデータモデルです。以下のようなモデルを作成します。
BBSテーブルに投稿内容を格納し、その子テーブルに投稿に対するコメントをつけられるようにします。親子関係は子テーブルに親のIDをセットすることで実現します。では実際に作成してみましょう。「リンク先」-「システムの構成」-「プラットフォームの構成」-「データベースの構成」を開きます。新規ボタンをクリックし、以下のように入力します。
メイン・オブジェクトにチェックをつけると、画面の構成でそのテーブルがトップ・レベル・オブジェクトとして選択できます。子テーブルなどはメイン・オブジェクトにする必要はありません。
デフォルトで追加される属性は"DESCRIPTION"と"BBSID"です。"BBSID"は「テーブル名+ID」で自動生成される内部のIDです。本格的なアプリケーションを作成する場合は外部キーに該当する属性を追加し、関係式もそちらを参照するようにします。たとえば作業指示書(WORKORDER)の場合、内部キーは"WORKORDERID"で、外部キーに"WONUM"と"SITEID"が用意されています。ユーザーが目に見える形では外部キーが採択されています。デフォルトでは"DESCRIPTION"属性には「詳細説明のオーナー」にチェックがついています。この場合"DESCRIPTION_LONGDESCRIPTION"という属性が自動生成され、長大なテキストを格納できる特殊なフィールドを作成することができます。
次に必要な属性を追加します。以下のように投稿者と投稿日の属性を「属性」タブの「新規行」ボタンから追加してください。
注意すべきはデフォルト値です。こちらは特別な予約語を使用しています。"&PERSONID&"は現在ログインしている担当者名が、"&SYSDATE&"は現在の日付が自動的に挿入されます。また、"PERSON"は同じオブジェクトに"PERSON"、同じ属性に"PERSONID"がセットされています。こちら���指定すると、属性のタイプや長さが自動的に同じ属性の値にセットされ、もし同じ属性のス��ーマが変化した場合でも自動的に追従してくれます。
次に子テーブルとして"BBSCOMMENT"テーブルを作成します。子テーブルはメインオブジェクトにする必要はありません。今回は"DESCRIPTION"の"詳細説明のオーナー"はオフにしてLONGDESCRIPTIONが生成されないようにします。また、投稿者、投稿日属性も親と同様に作成しておきます。
そして子テーブルには親との関連づけとして親のIDを格納する属性を追加します。上記で説明した同じ属性をこちらも同様に設定します。
次に親レコードから子レコードが検索できるように関係づけを行います。上記で作成した"BBSID"でひも付けを行います。関係式はSQL文で記述します。
これでメタデータの設定は終わりです。実際に構成を適用します。Maximoの場合、アプリケーション・サーバーをシャットダウンして"ALTER TABLE"などをする必要はありません。テーブルの構成はすべてデータベースの構成上から行うことができます。まずは「アクションの選択」から「管理モードの管理」を選択して、管理モードを有効にします。
次に「構成変更の適用」を選択して、構成を有効にします。
構成が終わったら、再び「管理モードの管理」から管理モードをオフにすれば完了です。さらなる属性の追加や変更も同様の手順で可能です。構成情報も自動的に反映されるのでアプリケーションの再起動も必要ありません。これらの機能が他社にまねできないMaximo開発の生産性を劇的に向上させる秘訣です。
次回はMaximoの次の特徴である画面変更について実践してみたいと思います。
0 notes
Text
アプリケーション・フレームワークとしてのMaximo (その3)
前回はオブジェクトの構成について解説しました。今回はMaximoの画面設計です。Maximoでアプリケーションというと定義が難しいのですが、画面を定義するプレゼンテーションXMLが一つの基準になります。これはXMLで様々なUIコントロールを定義すると同時に、UIイベントをハンドリングするBeanクラスとモデルに当たるMBOを定義することで一つのアプリケーションとして操作することができるようになります。以下はアクション・アプリケーションの例です。
https://gist.github.com/nishi2go/5170138b06424a1d6014
ここでのMBOはACTIONです。タグの"mboname"という属性に定義されています。presentationタグのmbonameに指定できるのはメインMBOのみです。データベースの構成からこのMBOがどのような構成になっているのか確認することができます。beanclass属性は"ActionAppBean"がセットされています。例えばpushbuttonコンポーネントなどでmxeventにEXAMPLEとセットしたら、そのボタンをアプリケーション上でクリックすることでbeanclassに実装されているclassのメソッドEXAMPLE()が呼び出されます。このようにイベントとして任意のJavaメソッドを呼び出すことも出来ますが、標準のテキストボックスなどにはわざわざ特別なメソッドを用意する必要はありません。テキストボックスにデータベースの属性をセットするだけで、値の挿入や編集などの操作が行えるようになります。
画面上には属性名が定義されており、MaximoのJSPが値の型を判別して、その型にあった処理を行います。従ってテキスト・ボックスの設定には特に数値であるとか文字列であるとか記入する必要はありません。これらのテキスト・ボックスや表などが組み合わさって一つのアプリケーションが構成されます。
アプリケーションはコピー可能です。例えば資産を閲覧する人や資産の種類によって画面を変更したい場合は、資産アプリケーションをコピーして新たなアプリケーションを作ることができます。
次回はもう少し実践的な内容でデータベースの構成を行っていきたいと思います。
0 notes