×

Party

In the following you will find some DELETE examples related to the party.
 
Example Code
 
Delete a party
Delete a party (only possible if no invoice is linked to this party).
 
External references to methods used in examples
#Code reference - GET.party_by_name
    
    [TestMethod]
    public void REST_Party_delete()
    {
        state = new ErrorState();
        Party party = GET.party_by_name("Hunkeler", manager);

        state.passed = false;
        if (party != null)
        {
            state.passed = DELETE.party(party, manager);
        }
        Assert.AreEqual(true, state.passed, state.message);
    }

    class DELETE
    {
        public static bool party(Party party, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            ErrorState state = new ErrorState { passed = false };

            if (party != null)
            {
                string request = "clients/{0}/parties/{1}";
                var response = manager.httpClient.DeleteAsync(string.Format(request, currentClient.id, party.id)).Result;
                state.passed = response.IsSuccessStatusCode;
            }
            return state.passed;
        }
    }
    
  
    
class DELETE:
  
   #region party
    @staticmethod
    def party(manager, party):
        
        _currentClient = manager.getCurrentClient()
        status = False

        url = '{0}clients/{1}/parties/{2}'.format(manager.baseURL(), _currentClient['id'], party['id'])
        
        try:
            response = requests.delete(url, headers = manager.headers())

            if response.status_code == 200:
                status = True

        except Exception as err:
            print("Error: {0}".format(err))   
            status = False

        return status 

    
  
 
Delete a creditor associated with a party
A party is either a creditor, a debtor or both. It might occur that a creditor/debtor needs to be deleted (only possible if no invoice is linked to this party).
  
External references to methods used in examples
#Code reference - GET.party_by_name
#Code reference - GET.party_by_id
#Code reference - DELETE.party
    
    [TestMethod]
    public void REST_Party_creditor_DELETE()
    {
        ErrorState state = new ErrorState { passed = false };

        Party party = GET.party_by_name("Hunkeler", manager);
        if (party != null)
        {
            state.passed = DELETE.party("Hunkeler", manager);
            Assert.AreEqual(true, state.passed, state.message);
        }
        party = GET.party_by_name("Hunkeler", manager);
        party = GET.party_by_id(party.id, manager);

        state.passed = false;
        Creditor creditor = Create.creditor(party.id, manager);
        state.passed = POST.creditor(creditor, party, manager);
        Assert.AreEqual(true, state.passed, state.message);

        party = GET.party_by_name("Hunkeler", manager);
        party = GET.party_by_id(party.id, manager);

        party = GET.party_by_name("Hunkeler", manager);
        if (party != null)
        {
            state.passed = false;
            state.passed = DELETE.party("Hunkeler", manager);
        Assert.AreEqual(true, state.passed, state.message);
        }
    }

    class DELETE
    {
        public static bool creditor(Party party, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            ErrorState state = new ErrorState { passed = false };
          
            if (party != null)
            {
                string request = "clients/{0}/parties/{1}/creditor";
                var response = manager.httpClient.DeleteAsync(string.Format(request, currentClient.id, party.id)).Result;

                if (response.StatusCode != HttpStatusCode.OK)
                {
                    ResponseDetails details = new ResponseDetails(response);
                }
                state.passed = response.IsSuccessStatusCode;
            }
            return state.passed;
        }
    }
    
  
    
class DELETE:
  
    @staticmethod
    def creditor(manager, party):
        
        _currentClient = manager.getCurrentClient()
        status = False

        url = '{0}clients/{1}/parties/{2}/creditor'.format(manager.baseURL(), _currentClient['id'], party['id'])
        
        try:
            response = requests.delete(url, headers = manager.headers())
            if response.status_code == 200:
                status = True

        except Exception as err:
            print("Error: {0}".format(err))
            status = False   

        return status

    
  
 
Delete a debtor associated with a party
A party is either a creditor, a debtor or both. It might occur that a creditor/debtor needs to be deleted (only possible if no invoice is linked to this party).
  
External references to methods used in examples
#Code reference - GET.party_by_name
#Code reference - GET.party_by_id
#Code reference - DELETE.party
    
        [TestMethod]
        public void REST_Party_debitor_DELETE()
        {
            ErrorState state = new ErrorState { passed = false };
            Party party = GET.party_by_name("Hunkeler", manager);

            if (party != null)
            {
                state.passed = DELETE.party("Hunkeler", manager);
                Assert.AreEqual(true, state.passed, state.message);
            }
            state.passed = false;
            party = Create.party(manager);
            state.passed = POST.party(party, manager);
            Assert.AreEqual(true, state.passed, state.message);

            party = GET.party_by_name("Hunkeler", manager);

            state.passed = false;
            Debtor debtor = Create.debtor(party.id, manager);
            state.passed = POST.debtor(debtor, party, manager);
            Assert.AreEqual(true, state.passed, state.message);

            party = GET.party_by_name("Hunkeler", manager);

            if (party != null)
            {
                state.passed = DELETE.debtor(party, manager);
                Assert.AreEqual(true, state.passed, state.message);
            }

            party = GET.party_by_name("Hunkeler", manager);
            if (party != null)
            {
                state.passed = DELETE.party("Hunkeler", manager);
            }
            Assert.AreEqual(true, state.passed, state.message);
        }

    class DELETE
    {
        public static bool debtor(Party party, Manager manager)
        {
            var currentClient = manager.getCurrentClient();
            ErrorState state = new ErrorState { passed = false };

            if (party != null)
            {
                string request = "clients/{0}/parties/{1}/debtor";
                var response = manager.httpClient.DeleteAsync(string.Format(request, currentClient.id, party.id)).Result;
                state.passed = response.IsSuccessStatusCode;
            }
            return state.passed;
        }
    }

    // Helper method
    private bool add_debtor_to_party(Manager manager)
    {
        state = new ErrorState();
        Party party = GET.party_by_name("Hunkeler", manager);

        if (party == null)
        {
            party = Create.party(manager);
            state.passed = POST.party(party, manager);
            party = GET.party_by_name("Hunkeler", manager);
        }
        Assert.AreEqual(true, state.passed, state.message);

        Debtor debtor = Create.debtor(party.id, manager);
        state.passed = POST.debtor(debtor, party, manager);
         Assert.AreEqual(true, state.passed, state.message);
 
        return state.passed;
   }
    
  
Delete Debtor
    
class DELETE:
  
    # TODO recheck
    @staticmethod
    def debtor(manager, party):
        
        _currentClient = manager.getCurrentClient()
        status = False

        url = '{0}clients/{1}/parties/{2}/debtor'.format(manager.baseURL(), _currentClient['id'], party['id'])
        
        try:
            if party != None:
                response = requests.delete(url, headers = manager.headers())
                if response.status_code == 200:
                    status = True

        except Exception as err:
            print("Error: {0}".format(err))
            status = False   

        return status