Odebrání vztahu prodejce se zákazníkem

Platí pro: Partnerské centrum | Partnerské centrum provozované společností 21Vianet | Partnerské centrum pro Microsoft Cloud pro státní správu USA

Odeberte vztah prodejce se zákazníkem, se kterým už nemáte transakce.

Požadavky

  • Přihlašovací údaje popsané v ověřování v Partnerském centru Tento scénář podporuje ověřování pouze s přihlašovacími údaji aplikace a uživatele.

  • ID zákazníka (customer-tenant-id). Pokud neznáte ID zákazníka, můžete ho vyhledat v Partnerském centru. Na domovské stránce Partnerského centra vyberte pracovní prostor Zákazníci. V seznamu Zákazník vyberte zákazníka a pak vyberte Účet. Na stránce Účet zákazníka vyhledejte ID Microsoftu v části Podrobnosti o účtu zákazníka. ID Microsoftu je stejné jako ID zákazníka (customer-tenant-id).

  • Před odebráním vztahu prodejce musí být zrušeny všechny objednávky rezervovaných instancí virtuálních počítačů Azure. Volejte podpora Azure pro zrušení všech otevřených objednávek rezervovaných instancí virtuálních počítačů Azure.

C#

Pokud chcete odebrat vztah prodejce pro zákazníka, nejprve se ujistěte, že se zruší všechny aktivní instance rezervovaných virtuálních počítačů Azure pro daného zákazníka. Dále se ujistěte, že jsou všechna aktivní předplatná pro daného zákazníka pozastavená. Uděláte to tak, že určíte ID zákazníka, pro kterého chcete odstranit vztah prodejce. V následujícím příkladu kódu se uživateli zobrazí výzva k zadání identifikátoru zákazníka.

Pokud chcete zjistit, jestli se musí zrušit některé rezervované instance virtuálních počítačů Azure pro zákazníka, načtěte kolekci nároků voláním metody IAggregatePartner.Customers.ById pomocí identifikátoru zákazníka a vlastnosti Nároky pro načtení rozhraní pro operace shromažďování nároků. Voláním metody Get nebo GetAsync načtěte kolekci nároků. Vyfiltrujte kolekci pro všechny nároky s hodnotou EntitlementType.VirtualMachineReservedInstance a pokud nějaké existují, zrušte je voláním podpory, než budete pokračovat.

Potom načtěte kolekci předplatných zákazníka voláním metody IAggregatePartner.Customers.ById pomocí identifikátoru zákazníka k určení zákazníka a vlastnosti Subscriptions pro načtení rozhraní pro operace shromažďování předplatných. Nakonec zavolejte metodu Get nebo GetAsync, která načte kolekci předplatných zákazníka. Projdete kolekci předplatného a ujistěte se, že žádná z předplatných nemá hodnotu vlastnosti SubscriptionStatus.Active. Pokud je předplatné stále aktivní, přečtěte si téma Pozastavení předplatného , kde najdete informace o tom, jak ho pozastavit.

Po potvrzení zrušení všech aktivních instancí virtuálních počítačů Azure pro daného zákazníka a pozastavení všech aktivních předplatných můžete zákazníkovi odebrat vztah prodejce. Nejprve vytvořte nový objekt Customer s vlastností relationshiptopartner nastavenou na CustomerPartnerRelationship.None. Potom zavolejte metodu IAggregatePartner.Customers.ById pomocí identifikátoru zákazníka k určení zákazníka a zavolejte metodu Patch, která předává nový objekt zákazníka.

Pokud chcete relaci znovu vytvořit, opakujte proces žádosti o vztah prodejce.

// 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");
}

Ukázka: Konzolová testovací aplikace Projekt: PartnerSDK.FeatureSample – třída: DeletePartnerCustomerRelationship.cs

Požadavek REST

Syntaxe požadavku

metoda Identifikátor URI žádosti
PATCH {baseURL}/v1/customers/{customer-tenant-id}/ HTTP/1.1

Parametr identifikátoru URI

Tato tabulka obsahuje seznam požadovaných parametrů dotazu pro odebrání vztahu prodejce.

Name Type Požadováno Popis
customer-tenant-id Identifikátor guid Y Hodnota je IDENTIFIKÁTOR GUID formátovaný id tenanta zákazníka, které identifikuje zákazníka.

Záhlaví žádosti

Další informace najdete v tématu Hlavičky REST Partnerského centra.

Text požadavku

V textu požadavku se vyžaduje prostředek zákazníka. Ujistěte se, že vlastnost RelationshipToPartner byla nastavena na hodnotu none.

Příklad požadavku

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: 9b4bf2ca-f374-4d51-9113-781ca87b8380
MS-RequestId: 9fef8b23-6e3e-45d2-8678-e9fe89c35af5
Date: Fri, 12 Jan 2018 00:31:55 GMT

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

Odpověď REST

V případě úspěchu tato metoda odebere vztah prodejce pro zadaného zákazníka.

Kódy úspěšnosti a chyb odpovědi

Každá odpověď obsahuje stavový kód HTTP, který označuje úspěch nebo selhání a další informace o ladění. Ke čtení tohoto kódu, typu chyby a dalších parametrů použijte nástroj pro trasování sítě. Úplný seznam najdete v tématu Kódy chyb REST v Partnerském centru.

Příklad odpovědi

HTTP/1.1 200 OK
MS-RequestId: 7988dde4-b516-472c-b226-6d53fb18f04e
MS-CorrelationId: 9b4bf2ca-f374-4d51-9113-781ca87b8380
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"
    }
}