오늘 오후에 Certified Developer를 취득하기 위해서 경복궁에 갔다 왔습니다.

시험은 역시 예상했던대로 영어 시험 이더군요.
90분간 영어를 해석하다가 보니 나중에는 머리가 멍해져서 해석이 잘 안되더군요.

시간은 20분정도 남았는데, 뭐 할일도 없고 해서 Review하면서 시간을 꽉 채우고 나왔습니다.

"Pass"라는 한글자를 보고 받은 메일에는 아래 이미지가 링크되어 있더군요.


아래는 세일즈포스에서 보낸 축하 메일 입니다.
자랑스럽게 Certified Developer 로고를 보여 주라고 되어 있군요.


Certified Advanced Developer (ADV DEV) 정보 입니다.

  • 합격 기준 : 120분 동안 69문항(다중 선택)을 풀어 73점 이상 받음
  • 비용
  • 시험 비용 : $200 (2회 Release exams 비용 포함), 다시 시험볼 경우 2회까지는 $100
  • Release exam 3회 (1년) : $100
  • Exam Outline
  • Development Lifecycle : 13%
  • Force.com Code (Apex) : 33%
  • Force.com Pages (Visualforce) : 38%
  • Testing and Debugging : 16%



Exam DEV

Apps

  • 종류
  • Standard Apps
  • Marketing, Sales, Call Center, Community, Platform, Salesforce Chatter
  • Custom Apps
  • App Logo : 개인적으로 Logo를 등록하여 사용할 수 있습니다.

Tabs

  • 종류
  • Custom Object Tab : Custom Object로 Tab을 구성
  • Web Tab : URL로 Tab을 구성
  • Visualforce Tab : Visualforce Page로 Tab을 구성
One App Edition Enterprise Edition Unlimited Edition
  • 1 Apps
  • 25 Tabs
  • 10 Objects
  • Account/Contact (Read-Only)
  • 10 Apps
  • 25 Tabs
  • 200 Objects
  • Account/Contact
  • Unlimit Apps
  • Unlimit Tabs
  • 2,000 Objects
  • Account/Contact

Custom Labels

  • Fields : Name, Value, Short Description, Language, Category
  • 5,000 Custom Labels * 1,000 Characters
  • System.Label.Name -> Value
  • {!$Lable.Name} -> Value

Objects

  • Fields
  • Id, Name (Text, Auto Number), Owner, Record Type
  • Allow Reports, Allow Activities, Track Field History
  • Standard Fields
  • ID : 18 digit Case-insensitive, 15 digit Case-sensitive, ID의 첫3자는 Object를 구분함
  • Custom Fields
  • External ID : text, number, email, up to 3 fields
  • Unique, Required, Default Value
  • Field의 종류
  • Auto Number, Formula, Roll-Up Summary
  • Checkbox
  • Picklist, Picklist(Multi-Select), Text (255자), Text (Encrypted, 255자), Text Area(255자)
  • Text Area (Long, 32768자), Text Area (Rish, 32768자)
  • Number, Percent, Currency
  • Date, Date/Time
  • Email, Phone, URL
  • Relationship의 종류
  • Lookup Relationship (One-to-Many Relationship) : Up to 25개
  • Master-Detail Relationship (One-to-Many Relationship) : Up to 2개
  • Standard Object는 Detail이 될 수 없음
  • Detail은 반드시 Master가 있어야 등록이 가능하고, Master 삭제시 Detail도 같이 삭제됨
  • Rollup-Summary : Sum, Max, Min, Count
  • Many-to-Many Relationship : M1 <- Junction Object -> M2
  • Hierarchical Relationship (One-to-Many Relationship)
  • User Object에서만 사용 가능
  • Field Accessibility (Record Type / Page Layout, Visible / Read-Only (Editable) / Required)
  • <- Field-Level Security (Profile, Visible / Read-Only)
  • Formula : Field update, Default Value
Validation Rule Formula Fields Workflow Rule Approval
  • Vlookup()
  • Image()
  • IsChange(), IsNew(), PriorValue()
 
  • Rules
  • Validation Rules -> Assignment Rules -> Auto Response Rules -> Workflow Rules -> Escalation Rules
  • $User, $UserRole, $Profile, $RecordType, $ObjectType, $Organization, $System
  • Button and Links
  • Standard Button and Links : Tab, List, View, Edit, Delete, New, Clone, Accept
  • Custom Button and Links
  • Search Layouts
  • Search Results
  • Lookup Dialogs, Lookup Phone Dialogs
  • Tab
  • List View
  • Search Filter Fields
  • Page Layout
  • Page Builder : Detail Page, Mini Page, Console Page
  • Visualforce Page -> Site
  • 제약 사항
  • Up to 500 custom fields per object
  • Up to 300 controlling fields <- Picklist, Picklist(Multi-Select)
  • Up to 5 level cross-object fields
  • Up to 5 required filter <- Relationship
  • Up to 20 field history tracking fields
  • Recycle Bin : 45일간 보관

Workflow & Approvals

  • Settings : Default Workflow User, Enable Email Approval Response
  • Actions
  • Eask
  • Email Alerts
  • Field Updates
  • Outbound Message
  • Workflow Rules (Object별)
  • Evaluate rule
  • When a record is created, or when is edited and not previously meet the rule criteria
  • Only when a record is created
  • Every time a record is created or edited
  • Rule Criteria
  • Criteria are met : Up to 25 filter criteria, Up to 255 character
  • Formula evaluates to true
  • Workflow Actions
  • Immediate Workflow Actions
  • Email Alert, Field Updates, Outbound Message
  • Time-Dependent Workflow Actions (여러개를 가질 수 있음)
  • Rule Trigger Date
  • Days / Hours, Before / After
  • Approval Process (Object별)
  • Initial Submission Actions : Record Lock
  • Approval Steps
  • approve record, reject record, go to next step
  • Approver : Manually, Earlier selected, Queue, Approver(s) - Up to 25 approvers (User, Queue, Related User)
  • Approve or reject on the FIRST response
  • Require UNANIMOUS approval from all selected approvers
  • Approval Actions, Rejection Actions
  • Final Approval Actions
  • Final Rejection Actions
  • Recall Actions

Email Template

  • Folder, Available For User, Letterhead, Layout, Encoding
  • HTML Version, Text Version
  • 종류 : Text, HTML (with Letterhead), Custom (without Letterhead), Visualforce

Monitoring

  • Outbound Messages
  • Time-Based Workflow
  • Email Logs

Report

  • Standard Report Type
  • Tabular report, Summary report (3 groups), Matrix report (2 * 2 groups)
  • Custom Report Type : Related field up to 4 levels
  • Schedule Report
  • Analytical Snapshot
  • Name, Unique Name, Running User
  • Source Report (Tabular, Summary) -> Target Object
  • Field Mappings
  • Schedule Analytic Snapshot
  • Email Analytic Snapshot, Scheduled Run (Daily, Weekly, Monthly)
  • Report Folder : Public Folder Access (Read-Only, Raed/Write)
  • Schedule Report : Running User, Email Report, Schedule Report
  • Report : Printable View, Export Datail
  • 2000 rows, Excel로는 모두 저장됨

Dashboard

  • Data source
  • Report : Summary, Matrix
  • Visualforce Page
  • Components
  • Up to 20 components
  • Visualforce Page
  • Gauge
  • Horizontal Bar Chart, Vertical Bar Chart, Line Chart
  • Pie Chart, Donut Chart
  • Funnel Chart
  • Dashboard Folder : Public Folder Access (Read-Only, Raed/Write)
  • Schedule Dashboard Refresh
  • Running User, Email Dashboard, Scheduled Refresh

Profile

  • Standard Profile
  • Standard User, Read Only, System Administrator : Salesforce License
  • Marketing User, Contract Manager, System Administrator : Salesforce License
  • Custom Profile
  • Profile
  • Name, Description, User License
  • Apps
  • Assigned Apps : Visible, Default
  • Objects and Tabs
  • Tab Settings : Default On, Default Off, Tab Hidden
  • Record Types : Assigned Record Types, Default Record Type
  • Page Laout Assignment
  • Picklist -> Picklist
  • Object Permissin : Read, Create, Edit, Delete, View All, Modify All
  • Field Permission : Read (Visible), Edit (Read-Only)
  • App Permissions
  • Apex Class Access
  • Visualforce Page Access
  • System
  • System Permissions
  • Desktop Client Access
  • Login Hours
  • Login IP Ranges
  • Tab 추가 -> Recent item, Sidebar Search, Create new object drop down
  • Security
  • Profile
  • Apps : Visible, Default
  • Tabs : Default On, Default Off, Tab Hidden
  • Object : Read, Create, Edit, Delete, View All, Modify All : Object-level Security
  • Field : Read (Visible), Edit (Read-Only) : Field-level Security
  • Record Type
  • Page Layout
  • Picklist -> Picklist (Field Dependencies)
  • Record-level Security
  • Full Access : View, Edit, Transfer Ownership, Delete, Share
  • Record Owner (User, Queue), Role hierachy, Modify All Data
  • Organization Wide Default (OWD)
  • Private, Public Read Only, Public Read/Write
  • Sharing Rules
  • Based on record Owner -> Public Group, Roles, Roles and Subordinates
  • Based on criteria -> Public Group, Roles, Roles and Subordinates
  • Read Only, Read/Write
  • Role-Hierarchy
  • Manual Sharing
  • Record 상단의 "Sharing" 버튼 <- Owner, Role Hierarchy, System Administration
  • Public Group, Roles, Roles and Subordinates, Users
  • Access Level : Full Access (-> Owner), Read, Read/Write
  • Reason : Owner, Manual Sharing (Apex Sharing Reasons, Up to 10개 per Object)
  • Apex Sharing Recalculation : Database.Batchable
  • Permission Sets : User당 여러개 지정 가능
  • System Permissions
  • Reports : Create and Customize Reports, ...
  • Dashboards : Schedule Dashboards, ...
  • Templates : ...
  • Objects : Edit Read Only Fields, Transfer Record, View Encrypted Date, Weekly Data Export
  • Manage List Views
  • Manage User
  • Send Outbound Message
  • Data : Manage Date Category, View Data Category
  • Customize Application, Modify All Data, View All Data, View Setup and Configuration
  • Setup Aduit Trail : 20 display, 6 Month csv

User

  • Fields
  • Role, Profile, User License
  • Development Mode, Show View State in Development Mode
  • Locale, Time Zone, Language, Email Encoding
  • Permissin Set Assignment, Personal Group, Public Group Membership, Queue Membership, Managers in the Role Hierarchy
  • User별 Login History : 10개, 6 Month csv
  • Login History : 20,000개, 6 Month csv/GZIP
  • Public Groups
  • Queues
  • Queue Name, Queue Email, Send Email to Members, Supported Objects
  • Queue Members : Public Group, Roles, Roles and Subordinates, Users
  • 사용처 : Record Owner, Assign Task, Assign Approver

Company Information

  • User License : Salesforce, Salesforce Platform, Chatter Free (5000), Chatter External (500)
  • Feature License
  • Marketing User, Service Cloud User, Offline User, Salesforce CRM Content User
  • System Log
  • Debug Logs
  • Up to 20 Users
  • Level : None, ERROR, WARN, INFO, DEBUG, FINE, FINER, FINEST
  • Category : Database, Workflow, Validation Callouts, Apex Code, Apex Profiling, Visualforce, System

Data Management

  • Import : Up to 50,000 records
  • Import Wizard : Accounts/Contacts, Leads, Solutions, Custom Objects
  • ID, External-ID
  • Data Loader
  • Command-Line : 일정 시간에 자동 실행으로 활용 가능
  • CSV (Comma Separated Values)
  • Extract, Insert, Upsert, Update, Delete

Posted by 산사랑

2011/11/16 22:43 2011/11/16 22:43
, , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/365

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/365

Leave a comment
[로그인][오픈아이디란?]

Force.com: String - 입출력 : Parameter

Force.com으로 웹 페이지를 제작하면 제일 먼저 사용하는 것이 Parameter를 사용한 값의 전달일 것 입니다. Visualforce 페이지에서 어떻게 Parameter을 전달할 수 있는지 알아 봅시다.

  • PageReference를 사용한 Parameter 입출력
  • ApexPages.currentPage().getParameters().get('paraStr')
  • ApexPages.currentPage().getParameters().put('paraStr', '~')
ApexPages.currentPage()는 현재 페이지의 PageReference를 반환 합니다.

  • Visualforce Page에서 Parameter 입출력
  • {!$CurrentPage.parameters.paraStr}


자 이제 직접 URL에서 parameter를 전달하는 방법을 알아 봅시다.

http://~/tmpPage?paraStr=~ 형태를 사용하여 Parameter를 전달하는 것은 익히 알려진 방법 입니다. 그렇지만 Force.com에서 제공하는 개체의 필드값을 Parameter로 전달하려면 아래와 같이 하셔야 합니다.

  • 각 필드의 고유한 ID를 확인 합니다.
  • "설정 -> App설정 -> 작성 -> 개체 -> [개체 선택] -> [필드 선택]"을 하면 아래와 같은 URL이 표시 됩니다.
  • 이때 00NA0000008Gc9u 이 이 필드의 고유한 ID 입니다.

  • URL에서 각 Input 필드별로 다음 값을 전달하면 데이터가 입력되어 있는 화면이 표시 됩니다.
  • 일반 필드
  • 필드_아이디=값
  • 검색 관계 필드 또는 마스터-세부 사항 관계 필드
  • 필드_아이디=화면에_표시될_이름
  • 필드_아이디_lkid=값(검색 관계에 있는 개체의 아이디)
  • 예) /a0B/e?CF00NA0000005JzZX={!ObjectMaster__c.Name}&CF00NA0000005JzZX_lkid={!ObjectMaster__c.Id}


Posted by 산사랑

2011/07/27 19:34 2011/07/27 19:34
, , , , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/353

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/353

Leave a comment
[로그인][오픈아이디란?]

Force.com: Visualforce Page Lifecycle

Salesforce의 Force.com을 사용하면 화면 구성을 위해 Visualforce page를 많이 사용 합니다. 아래 그림은 Visualforce Page의 Licycle 입니다.

Posted by 산사랑

2011/07/26 19:12 2011/07/26 19:12
, , , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/352

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/352

Leave a comment
[로그인][오픈아이디란?]

Force.com : String 선언

Force.com에서 가장 많이 사용하는 자료형을 보면 String과 sObject일 것입니다. 두개의 자료형에 대한 사용법을 명확히 숙지하게 된다면 Force.com의 중급 이상이라 볼 수 있습니다.

이제부터 그 중에서 String에 대해서 알아 봅시다. 이번 시간에는 String의 정의에 대해서 알아 봅시다.


String은 문자열을 저장하는 자료형 입니다.


 *** String의 정의 ***
 String item = new String();
 String item = '~';


 *** String 배열의 정의 ***
 String[] data = new String[7];
 String[] data = new String[3] {'~', '~', '~'};
 String[] data = new List<String>();
 String[] data = new List<String>(anotherList_객체);

 참고로 data와 같은 배열은 index가 0부터 시작 합니다.
 data[0], data[1], data[3], ...


String 선언은 아주 간단하죠 !!!

오픈소스 비즈니스 컨설팅


Posted by 산사랑

2011/07/25 19:55 2011/07/25 19:55
, , , , , , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/351

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/351

Leave a comment
[로그인][오픈아이디란?]

[Force.com] License Management App (LMA)

  • 제약 사항: Salesforce Enterprise Edition에서만 설치가 가능 합니다.
  • "License Management App" 애플리케이션
Licenses
  • 패키지별로 고객의 라이선스를 관리 합니다.
  • 레코드 유형 : Active, Expired, Suspended, Trial, Uninstalled

Packages
  • 패키지의 정보를 관리 합니다.

Package Versions
  • 패키지의 버전 정보를 관리 합니다.

Subscriber Support
  • 패키지를 설치한 고객의 원격 지원 요청이 있을 경우에 여기서 고객의 목록을 보고 고객의 Org로 로그인하여 지원할 수 있습니다.
  • 지원 절차
  1. 고객에게 요청하여 관리자로 로그인 합니다.
  2. "설정 -> 관리 설정 -> 보안 관리 -> 패키지 지원 액세스"에서 최대 30일까지 지원 액세스 권한을 부여 합니다.
  3. 패키지의 지원 담당자가 이 메뉴로 접속을 하여 "팩키지 지원 액세스"를 요청한 고객의 목록을 보고 여기서 바로 로그인하여 지원이 가능 합니다.

Posted by 산사랑

2011/06/29 18:02 2011/06/29 18:02
, , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/348

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/348

Leave a comment
[로그인][오픈아이디란?]

Apex Code Test 프로그램 작성 방식 제안

Apex Code로 프로그램을 작성하면 이를 배포하기 위해서는 전체 코딩된 라인중 75% 이상이 테스트 되어야 합니다. (Code Coverage Result가 75% 이상) Force.com에서 제시하는 테스트 방식을 살펴보면 해당 코드가 한번 이상 수행이 되면 테스트가 된 것으로 처리를 하고 있습니다. 따라서 Code Coverage Result를 높이기만을 원한다면 다양한 테스트 코드를 작성할 필요는 없고 각각의 라인이 한번 이상 실행이 되도록 테스트 코드를 작성하면 됩니다.

  • Code Coverage Result를 높이는 방법
  1. 분기문, 제어문 등에서 각각의 코드 블럭이 실행될 수 있도록 데이터를 구성 합니다. (추천)
  2. 테스트가 완료된 코드 블럭에 의미없는 코드를 추가하여 라인수를 늘입니다. (비추천)


아래 코드는 Test 클래스에 대한 작성 방식 제안 입니다.
ClassName이라는 클래스를 테스트할 때, ClassNameTest라는 별도의 클래스를 만들어서 테스트를 하는 것을 권장 합니다.

@IsTest
private class ClassNameTest {
   private static testmethod void testMain() {
       //--- Test를 위한 변수 선언
       ClassName test = null;
       
       //--- Test를 위한 사용자 설정 (필요한 경우만)
       User user = [select id from User where alias='auser'];
       System.RunAs(u1) {
           //--- Test를 위한 데이터 설정
           manage = new Manage();
   
           //--- Test 코드 작성
           test = new ClassName();
           test.setManage(manage);
           
           System.assert(actual == expected, 'Character.isAscii returned ');
           System.assertEquals(singletotalMiles,  totalMiles);
       }
   }
}


테스트 코드를 작성할 때, 정상적으로 수행이 되었는지 확인하기 위해서 System.assert 등의 함수를 사용할 수 있습니다. Code Coverage Result에 반영이 되지는 않지만 프로그램의 완성도를 위해서 필요한 부분은 System.assert 등을 사용하여 테스트 코드를 작성 하세요.

  • System.assert
  • System.assert(boolean) : boolean 값이 true이면 OK
  • System.assert(boolean, e.getMessage()) : boolean 값이 true이면 OK, boolean 값이 false이면 두번째 인자를 메시지로 표시
  • System.assertEquals(dataA, dataB [, msg]) : dataA와 dataB의 값이 동일하면 OK
  • System.assertNotEquals(dataA, dataB [, msg]) :  : dataA와 dataB의 값이 다르면 OK

오픈소스 비즈니스 컨설팅


Posted by 산사랑

2011/06/20 12:24 2011/06/20 12:24
, , , , , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/343

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/343

Leave a comment
[로그인][오픈아이디란?]
Force.com은 동적으로 페이지를 구성하는 방법을 크게 3가지를 제공 합니다.
  1. Visualforce Page에서 Rerender 사용 (권장)
  2. RemoteAction을 사용 (추천)
  3. AJAX에서 Visualforce Page를 호출 (비 추천)
이중 RemoteAction은 21.0 버전에서는 베타여서 사용하기가 부담스러웠는데
22.0으로 버전이 올라가면서 베타 딱지를 때었습니다.

RemoteAction을 사용하여 좀 더 동적인 페이지를 구성해 보세요.

Apex Code
global  class  MyJSController  {
  public  String  accountName  {  get;  set;  }
  public  static  Account  account  {  get;  set;  }
  public  MyJSController()  {  }
 
  @RemoteAction
  global  static  Account  getAccount(String  accountName)  {
    account  =  [SELECT  id,  name,  phone,  type,  numberofemployees
                   FROM  Account  
                  WHERE  name  =  :accountName  ];
    return  account;
  }
}

Visualforce Page
<apex:page controller="MyJSController">
    <script  type="text/javascript">
    var accountNameJS = null;
    accountNameJS = "오픈소스 비즈니스 컨설팅";
    MyJSController.getAccount(
        accountNameJS,    //--- getAccount에 전달되는 인자, 여러개일 경우 ","로 구분
        function(result, event) {     //--- result : 반환된 결과 값
            if  (event.status)  {
                //--- 정상 처리
                //--- 반환된 값은 result.name 또는 result[2].name 형태로 사용
            }  else  if  (event.type  ===  'exception')  {
                //--- Exception 오류 처리
            }  else  {
                //--- 오류 처리
            }
        },  
        {escape:true}
    );
    </script>
</apex:page>
 

오픈소스 비즈니스 컨설팅


Posted by 산사랑

2011/06/17 12:33 2011/06/17 12:33
, , , , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/342

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/342

Leave a comment
[로그인][오픈아이디란?]
Salesforce에서는 Site를 개설하여 Visualforce Page를 Salesforce에 로그인하지 않은 사용자가 사용할 수 있도록 허용하고 있습니다. 이때 고객이 사용할 수 있는 사이트의 도메인은 sefodot.force.com (HTTP 사용시) 또는 sefodot.secure.force.com (HHTPS 사용시) 같은 형태로 등록하여 사용할 수 있습니다.

고객은 도메인 등록을 통하여 sefodot.force.com 형태의 도메인을 sefodot.com 과 같이 사용자가 구입한 도메인에 연결하여 사용할 수 있습니다. 아래와 같이 작업을 하여 자신만의 도메인으로 Site를 사용해 봅시다.


1. Site에서 사용할 도메인 등록
    -  "설정 -> App 설정 -> 개발 -> 사이트"에서 sefodot.force.com 도메인을 등록 합니다.
    -  도메인을 일단 등록하면 도메인 이름을 수정할 수 없으므로 신중하게 등록하여야 합니다.

사용자 삽입 이미지

2. DNS 서버에 CNAME 등록
    -  CNAME은 도메인의 별칭을 의미 합니다.
    -  도메인 이름 등록 기관을 통해서 도메인을 구입한 경우, 해당 기관에 CNAME 등록을 요청 하세요.
    -  CentOS에서 DNS 서버를 구축하여 관리하고 있을 경우에는 다음과 같이 등록 합니다.
       사례) vi /var/named/chroot/var/named/113.287.114.zone

                     IN   NS              ns.sefodot.com
                    IN   CNAME       sefodot.force.com
www           IN   CNAME       sefodot.force.com

        참조) CentOS - DNS 서버 구축
 
오픈소스 비즈니스 컨설팅
 
 

Posted by 산사랑

2011/06/14 23:05 2011/06/14 23:05
, , , , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/339

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/339

Leave a comment
[로그인][오픈아이디란?]

Salesforce에 추가된 새로운 기능

2011년 6월 8일에 Salesfroce의 관리자 설정 화면을 보니 "신기능"이 몇가지 추가 되어 있네요.


설정 메뉴 검색

그림:SalesforceSearch.png

  • 모두 확대 : Tree Menu를 모두 펼칩니다.
  • 모두 축소 : Tree Menu를 모두 닫습니다.
  • 빠른 찾기 : 검색어를 포함한 메뉴를 보여 줍니다.


유사 기회

"기회"의 세부 사항 페이지에 관련 목록으로 유사 기회 관련 목록을 추가할 수 있도록 합니다.

  • 1단계 : 유사 기회 활성화
  • "유사 기회 활성화"를 체크 합니다.
  • 2단계 : 일치 기준 설정
  • 유사 기회를 찾을 때 비교할 필드를 선택 합니다. 필드는 3~10개까지 선택할 수 있습니다.
  • 3단계 : 유사 기준에 대해 표시할 필드 선택
  • 유사 기회 관련 목록에서 표시할 필드를 선택 합니다. 최대 15개까지 선택할 수 있습니다.
  • 4단계
  • "기회"의 세부 사항 페이지에서 유사 기회 관련 목록이 표시되도록 수정 합니다.


Apex 테스트 실행
  • Apex Class를 테스트할 수 있는 메뉴로 "테스트 선택..." 버튼을 클릭하여 테스트할 Class를 선택하여 실행할 수 있습니다. "테스트 내역 보기" 링크를 선택하면 Apex 테스트 결과를 볼 수 있습니다.
  • 기타 Apex Class를 테스트할 수 있는 메뉴
  • "설정 -> App 설정 -> 개발 -> Apex 클래스" 메뉴에서 "모든 테스트 실행" 버튼


AppExchange Marketplace
단순히 AppExchange Marketplace 화면을 Salesforce 관리자 설정 화면에 포함 시켜 두었네요.

 

오픈소스 비즈니스 컨설팅


Posted by 산사랑

2011/06/08 10:06 2011/06/08 10:06
, , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/336

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/336

Leave a comment
[로그인][오픈아이디란?]

[Force.com] SOQL중 Parent/Child 관계 사용하기

SOQL (Salesforce Object Query Language)에서 Parent/Child 관계를 사용하면 한번의 Query로도 다양한 데이터를 읽어 올 수 있습니다. 또한 이를 활용하면 중단 개체(테이블)를 사용하여 m-n의 관계를 형성할 수도 있습니다.




Parent 개체와 Child 개체 정의

Parent__c 개체
    ParentField01__c 필드 : String
    ParentField02__c 필드 : String

Child__c 개체
    ChildParent__c 필드
        - Parent__c와 "검색 관계" 또는 "마스터-세부 사항 관계" 형성
        - "하위 관계 이름"은 fnChildParent로 등록 합니다.
    ChildField01__c 필드 : String
    ChildField02__c 필드 : String


Parent/Child 관계를 사용한 Query문

List<Child__c> dataChild =
[SELECT ChildField01__c, ChildField__c,
                  ChildParent__r.ParentField01__c, ChildParent__r.ParentField02__c
      FROM Child__c];
String child01 = (String) dataChild.ChildField01__c;
String child02 = (String) dataChild.ChildField02__c;
String parent01 = (String) dataChild.ChildParent__r.ParentField01__c;
String parent02 = (String) dataChild.ChildParent__r.ParentField02__c;

List<Parent__c> dataParent =
[SELECT ParentField__c, ParentField__c,
                 (SELECT ChildField01__c, ChildField02__c
                       FROM fnChildParent)
     FROM Parent__c]
String parent01 = (String) dataParent.ParentField01__c;
String parent02 = (String) dataParent.ParentField02__c;
Child__c[] child = dataParent.fnChildParent;


Posted by 산사랑

2011/06/05 10:39 2011/06/05 10:39
, , , , ,
Response
No Trackback , No Comment
RSS :
http://www.jopenbusiness.com/tc/oss/rss/response/335

Trackback URL : http://www.jopenbusiness.com/tc/oss/trackback/335

Leave a comment
[로그인][오픈아이디란?]

블로그 이미지

개인적인 글쓰기와 오픈소스 비즈니스 컨설팅 관련 글을 정리합니다. consult (골뱅이) jopenbusiness.com

- 산사랑

Archives

12명이 RSS를 구독하고 있습니다.

Site Stats

Total hits:
516834
Today:
55
Yesterday:
179

*** 방문자 통계 ***
0513 : (178)
0514 : (163)
0515 : (195)
0516 : (182)
0517 : (177)
0518 : (194)
0519 : (179)
0520 : (55)
7일간 총 방문자수 : 1268