# Разработка расширений 1С (на примере 1С:УНФ). Аналогия с объектно-ориентированным программированием

# Видео

Расширения конфигураций. Адаптация прикладных решений с сохранением поддержки в облаках и на земле. Разработка в системе 1С:Предприятие 8.3. (opens new window)

# Аналогия с объектно-ориентированным программированием

Примитивные типы данных - число, строка, булево

Объект - коллекция различных значений и более сложных сущностей.

# Определение класса в JavaScript (создание объекта РасходнаяНакладная режиме Конфигуратора 1С)

class WayBill {
  constructor(date, number, sum) {
    this.date = date
    this.number = number
    this.sum = sum
    this.tax = 0
  }
  calculateTax(percent) {
    this.tax = this.sum * percent
  }
}

# Переопределение класса в JavaScript (создание расширения объекта РасходнаяНакладная в режиме Конфигуратора 1С)

class MyWayBill extends WayBill {
  constructor(date, number, sum) {
    super(date, number, sum)
    this.csTaxPercent = 0
  }
  calculateTax(percent) {
    super.calculateTax(percent)
    this.csTaxPercent = percent
  } 
}

# Создание объекта (создание документа пользователем в 1С в режиме Предприятия)

let wayBill = new WayBill('2022-07-01', 234, 100);
wayBill.calculateTax(0.06)
console.log('WayBill Tax sum = ' + wayBill.tax)
console.log('WayBill Tax percent = ' + wayBill.csTaxPercent)
console.log('/// --- ///')
Last Updated: 7/1/2022, 10:31:57 PM