CRM 2011-INVOICE PRICING LOCK and UNLOCK


LOCK:
                    
  LockInvoicePricingRequest lockInvoiceRequest =
                        new LockInvoicePricingRequest()
                    {
                        InvoiceId = _invoiceId
                    };
                    _serviceProxy.Execute(lockInvoiceRequest);

                    Console.WriteLine("Invoice pricing lock.");

UNLOCK:


  UnlockInvoicePricingRequest unlockInvoiceRequest =
                        new UnlockInvoicePricingRequest()
                    {
                        InvoiceId = _invoiceId
                    };
                    _serviceProxy.Execute(unlockInvoiceRequest);

                    Console.WriteLine("Invoice pricing unlocked.");

CRM 2011-ORDER DAN INVOICE OLUSTURMA (Convert the sales order to an Invoice)


ConvertSalesOrderToInvoiceRequest  clasıını kullanarak order dan invoice olusturabiliyoruz.
Gereklı olan hangı order ve hangı sutunlarının invoice a donusecegını vermek.

Örnek:
ColumnSet invoiceColumns =new ColumnSet(){AllColumns=true};//tum kolonları invoice donustur.

ConvertSalesOrderToInvoiceRequest req =
    new ConvertSalesOrderToInvoiceRequest()
    {
        SalesOrderId = new Guid("5481CF89-BFC1-E011-844B-1CC1DEF177B7"),
        ColumnSet = invoiceColumns
    };
ConvertSalesOrderToInvoiceResponse response =
                                                            (ConvertSalesOrderToInvoiceResponse)service.Execute(req);
Invoice invoice = (Invoice)response.Entity;

CRM 2011-TEKLİFİ ACTİVE DURUMUNA GETİRME(QUOTE ACTIVE)


 SetStateRequest activateQuote = new SetStateRequest()
                    {
                        EntityMoniker = quote.ToEntityReference(),// teklifi referans ver
                        State = new OptionSetValue((int)QuoteState.Active),// durumu active yap
                        Status = new OptionSetValue((int)quote_statuscode.InProgress) // bir status ver
                    };
                    _serviceProxy.Execute(activateQuote); // classı calıstır.

CRM içerisinden açılan custom page den açılan crm sayfasının yenilenmesi(Page Refresh)


function xrmpagerefresh() 

{
            window.parent.opener.parent.location.reload();
 }

"window.parent.opener.parent" bu kod ile sayfayı actıgımız crm sayfasına gecıs yaparız ve artık onunla ilgili javascriptler yazabiliriz.

Mesela custom page den  actıgımız crm sayfasıyla ilgili bazı degerleri cekelım.

var serverurl= window.parent.opener.parent.Xrm.Page.context.getServerUrl();
var organizationname= window.parent.opener.parent.Xrm.Page.context.getOrgUniqueName();

Bu gibi örnekleri turetebiliriz.

CRM 2011-SALES ORDER CLOSE İŞLEMİ


FulfillSalesOrderRequest classını kullanarak orderclose olusturarak siparişi kapatabiliriz.Status da bir durum vermek gereklidir.

Örnek;
FulfillSalesOrderRequest request = new FulfillSalesOrderRequest
            {
                OrderClose = new OrderClose
                {
                    SalesOrderId = new EntityReference 
                        { LogicalName = SalesOrder.EntityLogicalName, Id = _salesOrderId.Value }
                    
                },
                Status = new OptionSetValue(newStatus)
            };
FulfillSalesOrderResponse response= (FulfillSalesOrderResponse)crmService.Execute(request);

SAYFANIN QUERY STRINGINI ALMA-JAVASCRİPT


function getQueryStrings() {
    var message = document.getElementById("myOutputArea");
    var dataParameterString, querystring;
    // get data from querystring
    if (window.location.search != "") {
        querystring = window.location.search.substr(1).split("&");
        for (var i in querystring) {
            querystring[i] = querystring[i].replace(/\+/g, " ").split("=");
        }
        //look for the parameter named 'data'
        for (var i in querystring) {
            if (querystring[i][0].toLowerCase() == "data") {
                dataParameterString = querystring[i][1];
                break;
            }
        }

        message.innerText += dataParameterString;

    } else {
        message.innerText = "No details were specified in the querystring.";
        alert("ERROR: " + message.innerText);
    }
}    

ASP #NET de MENU KULLANIMI


<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
                    <Items>
                        <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Import Tool"/>
                        <asp:MenuItem NavigateUrl="#" Text="Qualification Tool"/>
                    </Items>
                </asp:Menu>