Lewati ke konten utama
Versi: terbaru

Klasifikasi Statistik (KBKI & KBLI)

Metode ini digunakan untuk mengambil daftar Klasifikasi Baku Lapangan Usaha Indonesia (KBLI) & Klasifikasi Baku Komoditas Indonesia (KBKI) dari API BPS. Ini memungkinkan pengguna untuk mengakses informasi terkait kode klasifikasi dan deskripsinya.

Enums

Terdapat dua kelas enum yang dapat digunakan sebagai parameter.

ClassificationType

ClassificationType adalah kelas dasar untuk menentukan jenis klasifikasi. Kelas ini kemudian di-extend oleh KBLIType dan KBKIType. Setiap kelas tersebut memiliki opsi sebagai berikut.

  • KBLIType

    EnumNilaiDeskripsi
    KBLI.y2009kbli2009KBLI tahun 2009
    KBLI.y2015kbli2015KBLI tahun 2015
    KBLI.y2017kbli2017KBLI tahun 2017
    KBLI.y2020kbli2020KBLI tahun 2020

    Untuk melakukan permintaan ke endpoint detail, kode KBLI perlu diformat dalam format kbli_tahun_kode. Kelas ini juga memfasilitasi proses formatting tersebut melalui metode urlParamGenerator yang menerima parameter kode.

    Contoh:

    final url = KBLIType.y2009.urlParamGenerator('24');
    /// hasil: kbli_2009_24
    final value = KBLIType.y2009.value;
    /// hasil: kbli2009
    final year = KBLIType.y2009.year;
    /// hasil: 2009
  • KBKIType

    EnumNilaiDeskripsi
    KBKI.y2015kbki2015KBKI tahun 2015

    Untuk melakukan permintaan ke endpoint detail, kode KBKI perlu diformat dalam format kbki_tahun_kode. Kelas ini juga memfasilitasi proses formatting tersebut melalui metode urlParamGenerator yang menerima parameter kode.

    Contoh:

    final url = KBKIType.y2015.urlParamGenerator('24');
    /// hasil: kbki_2015_24
    final value = KBKIType.y2015.value;
    /// hasil: kbki2015
    final year = KBKIType.y2015.year;
    /// hasil: 2015

ClassificationLevel

ClassificationLevel adalah kelas dasar untuk menentukan kelompok/tingkat klasifikasi. Kelas ini kemudian di-extend oleh KBLILevel dan KBKILevel. Setiap kelas tersebut memiliki opsi sebagai berikut.

  • KBLILevel

    EnumNilaiDeskripsi
    KBLILevel.categorykategoriMerupakan pembagian klasifikasi utama. Ditandai dengan satu huruf alfabet.
    KBLILevel.primaryGroupgolongan pokokDetailed description from category, each coded with two digits.
    KBLILevel.groupgolonganFurther details from the primary group, each coded with three digits. The first two indicate the primary group and the last digit the economic activity.
    KBLILevel.subGroupsubgolonganFurther detail from a group's economic activities, coded with four digits. The first three indicate the group and the last digit specifies the sub-group.
    KBLILevel.clusterkelompokDistinguishes activities within a subgroup into more homogeneous activities, coded with five digits.

    Kelas ini juga memfasilitasi proses validasi kode KBLI melalui metode validateCode.

    Contoh:

    final isValid = KBLILevel.category.validateCode('A');
    /// hasil: true
    final value = KBLILevel.category.value;
    /// hasil: kategori
  • KBKILevel

    EnumNilaiDeskripsi
    KBKILevel.sectionseksiGeneral classification outline, 1-digit code, 5 sections, 0-4.
    KBKILevel.divisiondivisiDetailed description from section, 2-digit code.
    KBKILevel.groupkelompokFurther details from division, 3-digit code.
    KBKILevel.classeskelasFurther details from group, 4-digit code.
    KBKILevel.subClasssubkelasDetailed from classes, 5-digit code.
    KBKILevel.commodityGroupkelompok komoditasDetailed from sub-classes, 7-digit code for commodity group.
    KBKILevel.commoditykomoditasDetailed from commodity group, 10-digit code for commodities.

    Kelas ini juga memfasilitasi proses validasi kode KBLI melalui metode validateCode.

    Contoh:

    final isValid = KBKILevel.section.validateCode('A');
    /// hasil: false
    final value = KBKILevel.section.value;
    /// hasil: seksi

Parameter

ParameterTipeDeskripsi
idStringID dari KBLI/KBKI. Harus diketik dalam format jenis_tahun_kode. Anda bisa menggunakan urlParamGenerator untuk melakukan formatting.
typeClassificationTypeMenentukan jenis klasifikasi dari enum KBLIType atau KBKIType.
langDataLanguageBahasa yang digunakan untuk data KBLI/KBKI (default: DataLanguage.id).
pageintNomor halaman (default: 1).
perPageintJumlah data per halaman (default: 10).

Contoh

Berikut ini adalah contoh penggunaan:

// Fetch KBLI/KBKI data from the BPS API
const type = KBLIType.y2015;

final result = await StadataFlutter.instance.view.statisticClassifications(
id: type.urlParamGenerator('A'),
type: type,
);
final statisticClassificationsList = result.data;
final pagination = result.pagination;

// Display page information
print('Current Page: ${pagination.page}');
print('Total Pages: ${pagination.pages}');
print('Data Count on This Page: ${pagination.count}');
print('Per Page: ${pagination.perPage}');
print('Total: ${pagination.total}');
print('------------------------');

// Display the retrieved statuc classification data
for (final statisticClassifications in statisticClassificationsList) {
print('Statistic Classification ID: ${statisticClassifications.id}');
print('Source: ${statisticClassifications.source}');
print('Title: ${statisticClassifications.title}');
print('Description: ${statisticClassifications.description}');
print('Last Update: ${statisticClassifications.lastUpdate}');
print('Release Date: ${statisticClassifications.releaseDate}');
print('Previous Classification Items: ${statisticClassifications.previous}');
print('Derived Classification Items: ${statisticClassifications.derived}');
print('Flag: ${statisticClassifications.flag}');
print('Tags: ${statisticClassifications.tags}');
print('Type: ${statisticClassifications.type}');
print('Level: ${statisticClassifications.level}');
print('ISBN: ${statisticClassifications.isbn}');
print('ISSN: ${statisticClassifications.issn}');
print('Catalogue Number: ${statisticClassifications.catalogueNumber}');
print('Publication Number: ${statisticClassifications.publicationNumber}');
print('Location: ${statisticClassifications.location}');
print('URL: ${statisticClassifications.url}');
print('MFD: ${statisticClassifications.mfd}');
}

Properti

  • StatisticClassification
PropertiTipeDeskripsi
idStringPengidentifikasi unik untuk KBLI/KBKI.
typeClassificationType?Jenis klasifikasi.
levelClassificationLevel?Tingkat klasifikasi.
sourceStringSumber data.
titleStringJudul.
descriptionStringDeskripsi.
isbnString?Nomor ISBN.
issnString?Nomor ISSN.
catalogueNumberString?Nomor katalog.
publicationNumberString?Nomor publikasi.
lastUpdateDateTimeTanggal terakhir pembaruan.
releaseDateDateTimeTanggal rilis.
locationString?Lokasi.
urlString?URL.
mfdString?Informasi MFD.
previousList<ClassificationItem>Daftar item klasifikasi sebelumnya.
derivedList<ClassificationItem>Daftar item klasifikasi yang diturunkan.
flagboolTanda.
tagsList<String>Daftar tag.
  • ClassificationItem
PropertiTipeDeskripsi
codeStringKode.
titleStringJudul.
descriptionStringDeskripsi.