The Managed Metadata Service or Connection is currently not available.

Posted by Alvin You
2015. 4. 17. 12:24 Sharepoint

Sharepoint 2010의 Managed Metadata Service 구성 중 아래와 같은 오류 메시지를 만나게 되면,

아래 방법으로 해결을 해 보세요. 많은 방법들 중 저에게 문제 해결이 되었던 방법입니다.

"The managed Metadata Service or Connection is currently not available. The Application Pool or Managed Metadata Web Service may not have been started. Please Contact your Administrator."

 

Resolution>

Sharepoint 2010 Management Shell을 통해 Initialize-SPResourceSecurity 명령어를 실행시켜 권한관련 설정을 초기화시킵니다.

 

위 명령어 실행 후 정상적으로 Term Store Management Tool이 뜨는 것을 확인할 수 있었습니다.

[Book Review]Microsoft Dynamics AX 2012 Development Cookbook

Posted by Alvin You
2015. 4. 16. 15:00 Dynamics AX

오늘 Review할 Dynamics AX 개발 관련 서적은 "Microsoft Dynamics AX 2012 Development Cookbook"입니다. Cookbook 단어처럼 Dynamics AX 개발에 첫 발을 내딪는 분들께 추천해 드리고 싶은 책입니다.

다양한 예제 중심의 교재로 손쉽게 따라할 수 있는 내용들이 많이 담겨 있고, 또한 업무에 바로 응용할 수 있는 내용들이 많이 담겨 있습니다.

하단에 교재의 목차를 담아 드릴 테니, 관심 있으신분들께서는 구입해서 읽어보시길 추천합니다.

Table of Contents

Preface 1

Chapter 1: Processing Data 7

Introduction 7

Creating a new number sequence 8

Renaming the primary key 13

Merging two records 17

Adding a document handling note 19

Using a normal table as a temporary table 21

Copying a record 22

Building a query object 25

Using a macro in an SQL statement 30

Executing a direct SQL statement 31

Enhancing the data consistency check 37

Exporting data to an XML file 41

Importing data from an XML file 44

Creating a comma-separated value file 46

Reading a comma-separated value file 49

Using the date effectiveness feature 52

Chapter 2: Working with Forms 57

Introduction 57

Creating a dialog 58

Handling a dialog event 63

Building a dynamic form 67

Adding a form splitter 72

Creating a modal form 77

Modifying multiple forms dynamically 79

Storing last form values 82

Using a tree control 85

Building a checklist 97

Adding the View details link 105

Chapter 3: Working with Data in Forms 109

Introduction 109

Using a number sequence handler 110

Creating a custom filter 113

Creating a custom instant search filter 117

Building a selected/available list 120

Preloading images 127

Creating a wizard 134

Processing multiple records 144

Coloring records 146

Adding an image to records 147

Chapter 4: Building Lookups 157

Introduction 157

Creating an automatic lookup 158

Creating a lookup dynamically 161

Using a form for building a lookup 163

Building a tree lookup 169

Displaying a list of custom options 173

Another way of displaying custom options 175

Building a lookup based on record description 179

Building the Browse for Folder lookup 185

Building a lookup for selecting a file 190

Creating a color picker lookup 194

Chapter 5: Processing Business Tasks 201

Introduction 201

Using a segmented entry control 202

Creating a general journal 207

Posting a general journal 215

Processing a project journal 217

Creating and posting a ledger voucher 221

Changing an automatic transaction text 225

Creating a purchase order 228

Posting a purchase order 231

Creating a sales order 236

Posting a sales order 239

Creating an electronic payment format 243

Chapter 6: Integration with Microsoft Office 253

Introduction 253

Creating an Excel file 254

Reading an Excel file 256

Creating a Word document from a template 259

Creating a Word document with repeating elements 262

Creating a Microsoft Project file 266

Sending an e-mail using Outlook 271

Chapter 7: Using Services 275

Introduction 275

Consuming the system query service 276

Consuming the system metadata service 279

Consuming an existing document service 281

Creating a document service 285

Consuming a document service 290

Using an enhanced document service 292

Creating a custom service 298

Consuming a custom service 301

Consuming an external service 303

Chapter 8: Improving Development Efficiency 309

Introduction 309

Creating an editor template 310

Modifying the Tools menu 315

Modifying the right-click context menu 317

Searching for an object in a development project 322

Modifying the Personalization form 325

Modifying the application version 329

Chapter 9: Improving Dynamics AX Performance 333

Introduction 333

Calculating code execution time 334

Writing efficient SQL statements 336

Caching a display method 338

Using Dynamics AX Trace Parser 341

Using SQL Server Database Engine Tuning Advisor 345

Index 349

Database Engine Tuning Advisor를 통한 Query Tuning

Posted by Alvin You
2015. 4. 16. 09:25 Dynamics AX/Performance

Dynamics AX의 성능을 올리는 방법 중 하나는 SQL Server에 만들어진 AX Database에 대한 Tuning 을 진행하는 방법도 있습니다. Tuning을 위해 SQL Server에서 제공되는 Analyze Query in Database Engine Tuning Advisor를 실행합니다.

Analyze Query in Database Engine Tuning Advisor를 실행 후 Start Analysis 버튼을 눌러, AX에서 사용 중인 Query에 대한 분석을 진행합니다.

분석이 끝나면, 아래 화면과 같이 Index 생성, Statistics 생성등과 같이, 해당 Query의 성능을 높이기 위한 방법들을 DETA(Database Engine Tuning Advisor)에서 보여줍니다.

Definition 칼럼에서 제공되는 이런 내용들을 Database에 적용 후 다시 DETA를 이용한 분석 진단을 진행해 봅니다.

이런 반복적인 과정을 통해서 Dynamics AX Performance를 높일 수 있습니다.

'Dynamics AX > Performance' 카테고리의 다른 글

Dynamics AX Trace Parser 사용법  (0) 2015.04.15
효율적인 SQL문 작성하기  (0) 2015.04.15
X++ 코드 실행시간 계산하기  (0) 2015.04.15

Failed to initialize MSDB database for tuning (exit code: -1073741819). (DTAClient)

Posted by Alvin You
2015. 4. 15. 21:47 SQL Server

Analyze Query in Database Engine Tuning Advisor 실행시 아래와 같은 오류가 발생한다면, MSDB에 DTA 관련 Objects들을 생성해 주면 됩니다.

[오류 메시지]

 

[스크립트 실행]

 

DTA_Objects_SQL.txt

 

Dynamics AX Trace Parser 사용법

Posted by Alvin You
2015. 4. 15. 13:23 Dynamics AX/Performance

Dynamics AX Trace Parser는 AOS Server와 Client간의 User Session, Call Trees, SQL Statements, Execution durations과 같은 정보를 모아 분석할 수 있는 환경을 제공합니다.

Trace 파일 생성을 위해 아래와 같이 CusTransTracing Class와 Main Method를 작성했습니다.

Trace 파일 수집을 위해서 Tools > Tracing cockpit 메뉴를 실행합니다.

[Tracing cockpit 화면]

Start trace 버튼을 눌러 Trace 파일이 저장될 공간과 이름을 C:\Temp\trace.etl 파일로 지정합니다.

이후 CustTransTracing Class를 실행시킨 후 Stop Trace 버튼을 눌러 Trace를 종료합니다.

Open Trace 버튼을 눌러 Microsoft Dynamics AX Trace Parser 프로그램을 띄웁니다. AX Trace Parser는 아래 그림과 같이 MS Dynamics AX 2012 프로그램 그룹안에서 실행할 수도 있습니다.

[Microsoft Dynamics AX Trace Parser 실행 화면]

MS Dynamics AX Trace Parser를 이용하면 개발되어 실행되는 모듈의 Class 정보, Class를 통해서 실행되는 SQL 문과 실행시간 등을 확인할 수 있습니다. 이렇게 수집된 자료를 분석하면, AX Performance를 높일 수 있는 Tuning Point를 발견해 성능 개선을 해 나갈 수 있습니다.

효율적인 SQL문 작성하기

Posted by Alvin You
2015. 4. 15. 11:47 Dynamics AX/Performance

아래 2개의 Table Method는 똑 같은 결과를 가져오지만, 데이터베이스의 Round Trip을 줄인 findByCustAccount2 코드가 더 효율적인 코드라고 볼 수 있습니다.

 

 

X++ 코드 실행시간 계산하기

Posted by Alvin You
2015. 4. 15. 11:27 Dynamics AX/Performance

아래 코드를 이용하면, AX로 개발된 코드의 실행시간을 계산할 수 있습니다.

 

 

 

X++ 코드를 이용한 Outlook 메일 전송

Posted by Alvin You
2015. 4. 10. 10:32 Dynamics AX/Development

Organization administration > Setup > E-mail templates에 들어가 메일 전송에 사용될 새로운 Template을 작성합니다.

E-Mail message 버튼을 눌러 아래와 같이 본문 내용을 작성합니다.

X++ 코드를 이용해 MS Project 파일 만들기

Posted by Alvin You
2015. 4. 10. 09:53 Dynamics AX/Development

Project management and accounting > Common > Projects > All Projects 위치에 있는 프로젝트 중 하나를 열어 Plan > Forecast > Hours forecasts 메뉴의 Action Pane의 Hour forecasts에 들어가 아래와 같이 몇 개의 항목을 만듭니다.

Hour forecast 작성 후 작성된 스케쥴의 갱신을 위해서 Scheduling > Scheduling 을 실행시킵니다.

그리고, 아래 코드를 작성해 실행시키면 Project 스케쥴링과 관련된 내용이 MS Project 파일로 그대로 옮겨와 지는 것을 볼 수 있습니다.

[결과화면]

X++ 코드를 이용해 Word 표에 값을 나열하기

Posted by Alvin You
2015. 4. 9. 17:31 Dynamics AX/Development

이번에는 Word 표에 LedgerParameters 테이블의 정보를 나열하는 로직을 구현하려고 합니다.

작업을 위해서 TableName이라는 책갈피를 추가해 주시고, 아래와 같이 행이 2개인 표를 추가한 table.dotx 서식 파일을 C:\Temp 경로에 저장합니다.

아래 코드를 이용해 위에서 작업한 서식 파일(table.dotx)에 LedgerParameter 테이블의 필드와 값을 보여지도록 할 수 있습니다.

[결과화면]

table.dotx