İçeriğe geç
Educora
Başlangıç16 dk4 / 14

Yerleşik dil: sözdizimi, değişkenler ve türler

1C dilinin dilbilgisini, ilkel türleri (`Число`, `Строка`, `Дата`, `Булево`, `Неопределено`), operatörleri, metin ve tarih fonksiyonlarını öğren.

Kendini test et
Bu derste öğreneceklerin
  • 1C dilinin sözdizimi kurallarına uymak
  • İlkel türleri, sabit değerleri ve operatörleri kullanmak
  • Metinleri ve tarihleri standart fonksiyonlarla işlemek

Rusça anahtar sözcükler ilk bakışta alışılmadık görünebilir, ama 1C dilinin dilbilgisi Pascal ve Basic'e benzer ve çok basittir. Birkaç kuralı öğrendiğinde herhangi bir tipik konfigürasyonun kodunu okuyabilirsin. Bu derste dilin “alfabesini” öğreneceğiz: değişkenler, türler, operatörler, metinler ve tarihler.

Sözdizimi kuralları

  • Dil büyük-küçük harfe duyarlı değildir: Сумма, сумма ve СУММА aynı değişkendir.
  • Her ifade ; ile biter; bloklar süslü parantezle değil anahtar sözcüklerle kapanır: КонецЕсли (EndIf), КонецЦикла (EndDo), КонецПроцедуры (EndProcedure).
  • Yorum // ile başlar ve satır sonuna kadar sürer.
  • Bir ad harf, rakam ve _ işaretinden oluşur ve rakamla başlamaz; Kiril ve Latin harfleri kullanılabilir.
  • Metin sabiti çift tırnak içinde yazılır; içindeki tırnak iki kez yazılır, çok satırlı metnin her yeni satırı | ile başlar.

Değişkenler ve ilkel türler

1C dinamik türlü bir dildir: değişken ilk atamada oluşur ve türünü değerden alır. Modül düzeyindeki değişkenler Перем (Var) ile bildirilir; prosedürlerin içinde ise genellikle doğrudan değer atanır. Bir değerin türünü ТипЗнч() (TypeOf) fonksiyonu döndürür.

TürİngilizcesiSabit değer örneği
ЧислоNumber42, 2.5, -7
СтрокаString"Bakı"
ДатаDate'20260927', '20260927153000'
БулевоBooleanИстина / Ложь (True / False)
НеопределеноUndefinedНеопределено
NULLNullNULL — sorgu sonuçlarında boş değer
Tarih her zaman saati de içerir; boş tarih '00010101''dir. Kodda ondalık kısım noktayla yazılır: 2.5.
1C
Количество = 12;             // Число
Цена = 2.5;                  // Число с дробной частью
Название = "Чай ""Гранулированный"""; // кавычки внутри удваиваются
ДатаПродажи = '20260927';    // Дата
Оплачено = Ложь;             // Булево
Скидка = Неопределено;

Если ТипЗнч(Цена) = Тип("Число") Тогда
    Сообщить("Цена - число");
КонецЕсли;
Сообщить(Название);
Beklenen çıktı
Цена - число
Чай "Гранулированный"
Değişkenler değer atandığında oluşur. Тип("Число") bir tür adını tür nesnesine çevirir.

Operatörler

Aritmetik operatörler: + - * / ve kalan %. Metinler + ile birleştirilir; metne eklenen bir sayı otomatik olarak metne dönüştürülür. Karşılaştırma: = <> < > <= >=. Mantıksal operatörler: И, ИЛИ, НЕ (AND, OR, NOT). Dikkat: = hem atama hem de karşılaştırmadır; anlamı bağlam belirler.

1C
А = 17;
Б = 5;
Сообщить(А + Б);
Сообщить(А * Б);
Сообщить(А % Б);        // остаток от деления
Сообщить(Цел(А / Б));   // целая часть
Сообщить("Salam, " + "Aysel" + "!");
Сообщить("Возраст: " + 15);
Beklenen çıktı
22
85
2
3
Salam, Aysel!
Возраст: 15

Metinler ve tarihler

FonksiyonNe yapar
СтрДлина(С)metnin uzunluğu
СокрЛП(С)baştaki ve sondaki boşlukları siler
ВРег(С) / НРег(С)büyük / küçük harfe çevirir
Лев(С, N) / Прав(С, N) / Сред(С, Нач, N)soldan / sağdan / ortadan N karakter
СтрНайти(С, Подстрока)alt metnin konumu (1'den), bulunamazsa 0
СтрЗаменить(С, Что, НаЧто)tüm geçişleri değiştirir
СтрРазделить(С, ",")metni bir diziye böler
СтрШаблон("%1 - %2", А, Б)%1, %2 yerine değerleri koyar
1C
Текст = СокрЛП("  Educora 1C  ");
Сообщить(СтрДлина(Текст));
Сообщить(ВРег(Текст));
Сообщить(Лев(Текст, 7));
Сообщить(СтрНайти(Текст, "1C"));
Сообщить(СтрЗаменить(Текст, " ", "_"));
Сообщить(СтрШаблон("%1: %2 уроков", Текст, 14));
Beklenen çıktı
10
EDUCORA 1C
Educora
9
Educora_1C
Educora 1C: 14 уроков

Tarihlerle çalışmak da basittir. Bir tarihe sayı eklemek saniye eklemek demektir (bir gün = 86400 saniye); iki tarihin farkı da saniye cinsindendir. НачалоМесяца (BegOfMonth), КонецМесяца (EndOfMonth), НачалоДня ve ДобавитьМесяц (AddMonth) gibi fonksiyonlar dönemlerle çalışmayı kolaylaştırır; Формат() (Format) ise tarihleri ve sayıları istediğin biçimde gösterir.

1C
Д = '20260927';
Сообщить(Формат(Д, "ДФ=dd.MM.yyyy"));
Сообщить(Формат(НачалоМесяца(Д), "ДФ=dd.MM.yyyy"));
Сообщить(Формат(КонецМесяца(Д), "ДФ=dd.MM.yyyy"));
Сообщить(Формат(ДобавитьМесяц(Д, 5), "ДФ=dd.MM.yyyy"));
Сообщить(Формат(Д + 86400 * 7, "ДФ=dd.MM.yyyy"));
Сообщить(('20261231' - Д) / 86400);   // дней до конца года
Сообщить(Формат(Год(Д), "ЧГ=0"));
Beklenen çıktı
27.09.2026
01.09.2026
30.09.2026
27.02.2027
04.10.2026
95
2026

Önemli noktalar

  • Dil büyük-küçük harfe duyarsızdır, ifadeler ; ile biter, bloklar anahtar sözcüklerle kapanır.
  • İlkel türler: Число, Строка, Дата, Булево, Неопределено, NULL.
  • Tarih sabiti: 'YYYYAAGG'; tarihe sayı eklemek saniye eklemektir.
  • % bölümden kalan, Цел() (Int) tam kısımdır.
  • Sayıları ve tarihleri göstermek için Формат() kullan, örneğin "ЧГ=0", "ДФ=dd.MM.yyyy".

Kendini test et

10 soru. Her doğru cevap XP kazandırır.

1 / 10
Сообщить(17 % 5); ne yazdırır?