Aracılığıyla paylaş


Bir müşteriyle kurumsal bayi ilişkisini kaldırma

Şunlar için geçerlidir: İş Ortağı Merkezi | 21Vianet tarafından işletilen İş Ortağı Merkezi | ABD Kamu için Microsoft Bulut İş Ortağı Merkezi

Artık işlem gerçekleştirmediğiniz bir müşteriyle kurumsal bayi ilişkisini kaldırın.

Önkoşullar

  • İş Ortağı Merkezi kimlik doğrulamasında açıklandığı gibi kimlik bilgileri. Bu senaryo yalnızca App+User kimlik bilgileriyle kimlik doğrulamayı destekler.

  • Müşteri kimliği (customer-tenant-id). Müşterinin kimliğini bilmiyorsanız, bunu İş Ortağı Merkezi'nde arayabilirsiniz. İş Ortağı Merkezi Giriş sayfasından Müşteriler çalışma alanını seçin. Müşteri listesinden müşteriyi ve ardından Hesap'ı seçin. Müşterinin Hesap sayfasında, Müşteri Hesabı ayrıntıları bölümünde Microsoft Kimliğini bulun. Microsoft Kimliği, müşteri kimliğiyle (customer-tenant-id) aynıdır.

  • Kurumsal bayi ilişkisi kaldırılmadan önce tüm Azure Ayrılmış VM Örneği siparişleri iptal edilmelidir. Tüm açık Azure Ayrılmış VM Örneği siparişlerini iptal etmek için Azure desteği'ı arayın.

C#

Bir müşterinin kurumsal bayi ilişkisini kaldırmak için öncelikle ilgili müşterinin etkin Azure Ayrılmış VM Örneklerinin iptal edilmesini sağlayın. Ardından, bu müşteri için tüm etkin aboneliklerin askıya alındığından emin olun. Bunu yapmak için bayi ilişkisini silmek istediğiniz müşterinin kimliğini belirleyin. Aşağıdaki kod örneğinde kullanıcıdan müşteri tanımlayıcısını sağlaması istenir.

Müşterinin Azure Ayrılmış VM Örneklerinin iptal edilmesi gerekip gerekmediğini belirlemek için, müşteri tanımlayıcısını kullanarak IAggregatePartner.Customers.ById yöntemini ve yetkilendirme toplama işlemleri için bir arabirim almak üzere Yetkilendirmeler özelliğini çağırarak yetkilendirme koleksiyonunu alın. Yetkilendirme koleksiyonunu almak için Get veya GetAsync yöntemini çağırın. Yetkilendirmeler için koleksiyonu, EntitlementType.VirtualMachineReservedInstance değerinde bir EntitlementType değeriyle filtreleyin ve varsa devam etmeden önce destek çağırarak bunları iptal edin.

Ardından, müşteri tanımlayıcısını kullanarak IAggregatePartner.Customers.ById yöntemini çağırarak müşterinin aboneliklerinin koleksiyonunu ve abonelik toplama işlemlerine arabirim almak için Subscriptions özelliğini alın. Son olarak, müşterinin abonelik koleksiyonunu almak için Get veya GetAsync yöntemini çağırın. Abonelik koleksiyonundan geçiş yapın ve aboneliklerden hiçbirinin SubscriptionStatus.Active Subscriptions.Status özellik değerine sahip olmamasını sağlayın. Abonelik hala etkinse, aboneliği askıya alma hakkında bilgi için bkz . Aboneliği askıya alma.

Bu müşterinin tüm etkin Azure Ayrılmış VM Örneklerinin iptal edildiğini ve tüm etkin aboneliklerin askıya alındığını onayladıktan sonra müşterinin kurumsal bayi ilişkisini kaldırabilirsiniz. İlk olarak, relationshiptopartner özelliği CustomerPartnerRelationship.None olarak ayarlanmış yeni bir Customer nesnesi oluşturun. Ardından müşteri tanımlayıcısını kullanarak IAggregatePartner.Customers.ById yöntemini çağırın ve yeni müşteri nesnesini geçirerek Patch yöntemini çağırın.

İlişkiyi yeniden kurmak için kurumsal bayi ilişkisi isteme işlemini tekrarlayın.

// IAggregatePartner partnerOperations;

// Prompt the user the enter the customer ID.
var customerIdToDeleteRelationshipOf = this.Context.ConsoleHelper.ReadNonEmptyString("Please enter the ID of the customer you want to delete the relationship with", "The customer ID can't be empty");

// Determine if there are any active Azure Reserved VM Instances for this customer.
ResourceCollection<Entitlement> entitlements = partnerOperations.Customers.ById(customerIdToDeleteRelationshipOf).Entitlements.Get();

If (entitlements.Items.Where(x => x.EntitlementType == EntitlementType.VirtualMachineReservedInstance).Any())
{
    this.Context.ConsoleHelper.Warning("Please cancel Azure Reserved Virtual Machine Instance orders through support and try again. Aborting the delete customer relationship operation");
               return;
}

// Verify that there are no active subscriptions.
ResourceCollection<Subscription> customerSubscriptions = partnerOperations.Customers.ById(customerIdToDeleteRelationshipOf).Subscriptions.Get();
IList<Subscription> subscriptions = new List<Subscription>(customerSubscriptions.Items);

foreach (Subscription customerSubscription in subscriptions)
{
    if (customerSubscription.Status == SubscriptionStatus.Active)
    {
        this.Context.ConsoleHelper.Warning(String.Format("Subscription with ID :{0}  OfferName: {1} cannot be in active state, ", customerSubscription.Id, customerSubscription.OfferName));
        this.Context.ConsoleHelper.Warning("Please Suspend all the Subscriptions and try again. Aborting the delete customer relationship operation");
               return;
    }
}

// Delete the customer's relationship to the partner.
Customer customer = new Customer();
customer.RelationshipToPartner = CustomerPartnerRelationship.None;
customer = partnerOperations.Customers.ById(customerIdToDeleteRelationshipOf).Patch(customer);

if (customer.RelationshipToPartner == CustomerPartnerRelationship.None)
{
    this.Context.ConsoleHelper.Success("Customer Partner Relationship successfully deleted");
}

Örnek: Konsol test uygulaması. Proje: PartnerSDK.FeatureSample Sınıfı: DeletePartnerCustomerRelationship.cs

REST isteği

İstek söz dizimi

Yöntem İstek URI'si
PATCH {baseURL}/v1/customers/{customer-tenant-id}/ HTTP/1.1

URI parametresi

Bu tabloda kurumsal bayi ilişkisini kaldırmak için gerekli sorgu parametreleri listelenir.

Adı Tür Zorunlu Açıklama
customer-tenant-id Guıd Y Değer, müşteriyi tanımlayan GUID biçimli customer-tenant-id değeridir.

İstek üst bilgileri

Daha fazla bilgi için bkz . İş Ortağı Merkezi REST üst bilgileri.

Request body

İstek gövdesinde bir Müşteri kaynağı gereklidir. RelationshipToPartner özelliğinin hiçbiri olarak ayarlandığından emin olun.

İstek örneği

PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id> HTTP/1.1
Authorization: Bearer <token>
Content-Length: 74
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 9fef8b23-6e3e-45d2-8678-e9fe89c35af5
Date: Fri, 12 Jan 2018 00:31:55 GMT

{
    "relationshipToPartner":"none",
    "attributes":{
        "objectType":"Customer"
    }
}

REST yanıtı

Başarılı olursa, bu yöntem belirtilen müşteri için kurumsal bayi ilişkisini kaldırır.

Yanıt başarısı ve hata kodları

Her yanıt, başarılı veya başarısız olduğunu belirten bir HTTP durum kodu ve ek hata ayıklama bilgileriyle birlikte gelir. Bu kodu, hata türünü ve ek parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz . İş Ortağı Merkezi REST hata kodları.

Yanıt örneği

HTTP/1.1 200 OK
MS-RequestId: 7988dde4-b516-472c-b226-6d53fb18f04e
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Content-Type: application/json
Content-Length: 242
Expect: 100-continue

{
    "Id":null,
    "CommerceId":null,
    "CompanyProfile":null,
    "BillingProfile":null,
    "RelationshipToPartner":"none",
    "AllowDelegatedAccess":null,
    "UserCredentials":null,
    "CustomDomains":null,
    "AssociatedPartnerId":null,
    "Attributes":{
        "ObjectType":"Customer"
    }
}