1C RƏSMİ TƏRƏFDAŞI

1C ilə Biznes Tətbiqlərinin Dizaynı. 4-cü hissə.

Məqalələrimizin üçüncü hissəsində inkişaf etdirdiyimiz sistem üçün ikinci sənədi yaratdıq. Bu satış faktura sənədi idi. Bu sənəd növü ilə istifadəçilər şirkətin anbarlarından məhsulların satışını əks etdirən biznes fəaliyyətini reyestr alırlar.

Əvvəllər yaradılmış təchizatçı faktura sənədindən fərqli olaraq, satış fakturası nəinki ProductsInWarehouses-u reyestrə almaq üçün qeydlər əlavə edir, həm də göndərmə zamanı ehtiyat balansını yoxlayır. Əgər ehtiyat kifayət deyilsə, o, prosesi dayandırır və xəta qaytarır. Beləliklə, əgər anbarımızda hansısa məhsulun 10 ədədi varsa və onlardan 15-ni satmaq istəyiriksə, tətbiq bunu etməyə mane olur. Başqa sözlə desək, satış faktura sənədində həyata keçirilən bir ehtiyata nəzarət funksiyamız var.

Buna baxmayaraq, şirkət işçiləri yalnız satış hesab-fakturaları yaratdıqda deyil, ümumiyyətlə öz anbar ehtiyatlarını bilməlidirlər. Anbar ehtiyatına nəzarət anbarlar və satınalmalarla məşğul olan işçilərin əsas vəzifələrindən biridir. Heç bir şirkət bu funksiya olmadan düzgün fəaliyyət göstərə bilməz.

Beləliklə, cari anbar ehtiyatını tapmağın sürətli yolu nədir? 1C platforması ilə istənilən mürəkkəblikdə hesabatlar yaratmağa imkan verən xüsusi bir obyekt var. Bu obyektin adının Report (Hesabat) olması təəccüblü deyil.

1C platforması kifayət qədər uzun müddətdir mövcud olduğundan, obyekt hesabatı yaratmağın və istifadə etməyin bir neçə yolu var. Onlardan bəziləri olduqca mürəkkəbdir; digərlərini həyata keçirmək asandır. Bunun üçün platforma daxilində hesabat yaratmağın ən sadə və sürətli yolunu nəzərdən keçirməyi təklif edirik.

Amma davam etməzdən əvvəl bir daha deyək ki, hansı hesabatı istəyirik.

Biz cari səhmlər haqqında məlumatları ehtiva edən hesabat istəyirik. Bir neçə anbarımız olduğundan anbara düşən ehtiyatı bilməliyik. Əlavə olaraq, bizdə müxtəlif istehsalçıların məhsulları olduğu üçün onların da hesabatda qeyd olunmasını istəyirik. Təbii ki, istifadəçilərin hesabatı müəyyən bir tarix və anbar üçün qurmaq imkanı olmalıdır.

Gəlin bunu edək. Designer (Dizayner) başlığına daxil olun və siyahıda Reports (Hesabatlar) bölməsini tapın, yeni hesabat yaradın.

pic_1.png

Bunu StockStatement (Fond Hesabatı) adlandıra bilərik:

pic_2.png

Yuxarıda qeyd edildiyi kimi, 1C platforması hesabat yaratmağın bir neçə yolunu təklif edir. Verilənlərin Tərkibi Sistemi (və ya DCS) onlardan biridir. Hal-hazırda bu yanaşma 1C platformasında qurulmuş tətbiqlərdə hesabatların yaradılması üçün ən səmərəlidir. Bu səbəbdən biz buradakı vəzifəmiz üçün istifadə etmək istəyirik.

Open data composition schema (məlumat kompozisiya sxemini açın) düyməsini basın:

pic_3.png

Data composition schema(verilənlərin kompozisiya sxemi) seçilmiş bir pəncərə açılır. Burada dəyişmək üçün heç nə yoxdur. Sadəcə Finish düyməsini basın.

pic_4.png

Siz dərhal tələb olunan hesabatı tərtib etmək üçün istifadə edə biləcəyiniz bir forma alırsınız. Beləliklə, tələb olunan parametrləri qurmağa davam edək:

pic_5.png

Hesabatımızın mənbə kimi istifadə etməli olduğu DataSet-i təyin etməklə başlayırıq. Kontekst menyusuna daxil olmaq üçün Add(əlavə et) düyməsini basın:

pic_6.png

Bu menyudan göründüyü kimi, DataSet verilənlər bazası sorğusu, tətbiqimizdəki obyekt və ya birlik ola bilər. Demək olar ki, bütün hallarda hesabatlar üçün DataSet verilənlər bazası sorğularına əsaslanır. Bu, ən səmərəli yoldur və hər şeyi qurmaq asandır. Kontekst menyusunda DataSet-in mənbəyi kimi verilənlər baza sorğularını seçin. İndi forma dəyişikliyini görürsünüz. Aşağı sağ küncdə bir pəncərə alırıq:

pic_7.png

Siz ya özünüz sorğu yarada, ya da wizard (sehrbaz) istifadə edə bilərsiniz. Wizard seçimi olduqda mürəkkəb sorğuları əl ilə yaratmaq ağlabatan görünmür. Query wizard (sorğu sehrbazı) düyməsini klikləyin.

pic_8.png

Belə bir Query wizard görəcəksiniz:

pic_9.png

İndi hesabat üçün məlumat mənbəyi kimi cədvəl seçirik. Yadınızdadırsa, biz anbar ehtiyatları ilə maraqlanırıq. AccumulationRegisters (Yığım reyestrləri) siyahısına keçin və mövcud cədvəlləri yoxlayın:

pic_10.png
Yalnız bir yığılma registri olduğu üçün çoxlu məlumat cədvəllərini görmürük. Bu, ProductsInWarehouses-un özü və 1C platformasının avtomatik yaratdığı reyestr üçün üç virtual cədvəldir: balans, dövriyyələr, balans və dövriyyələr.

Bizə balans üçün cədvəl lazımdır. Onu Tables(Cədvəllər) bölməsinə köçürün:

pic_11.png
1C platformasında sorğularla təcrübəniz varsa, bilirsiniz ki, hər bir virtual cədvəlin əvvəlcədən təyin etdiyimiz xüsusi parametrləri var. Eyni şey ProductsInWarehousesBalance virtual cədvəlinə də aiddir.

pic_12.png
Hesabatda onlardan bəziləri istifadə edilsə də, biz yenə də bizim situasiyamızda virtual cədvəl parametrlərini göstərmirik. Biz bu addımı ötürürük, çünki məlumatların işlənməsi Verilənlər Tərkibi Sistemi (DCS) səviyyəsində baş verir. Sahələri boş buraxın və davam edin.

Burada hesabata daxil ediləcək virtual cədvəldəki sahələri göstərməliyik. Mövcud sahələrin siyahısını genişləndirin:

pic_13.png

Reyestr, bizim situasiyada, o qədər də çox olmayan atributlarla olduqca sadədir, ona görə də virtual cədvəl eyni dərəcədə sadədir, yalnız üç sahə ilə məhdudlaşır: Warehouse, Product QuantityBalance. Hesabatımız üçün bunların hamısına ehtiyacımız var. Beləliklə, bu elementləri sağdakı Fields bölməsinə köçürün:

pic_14.png

Həmçinin, hesabatda məhsul istehsalçıları haqqında məlumat istəyirik (yadda saxlayın ki, burada Manufacturer atributu Products kataloqunda bir atributdur). Bu məlumatı sorğu ilə də əldə edə bilərik:

pic_15.png

Ancaq bu, ən təsirli yol deyil. İstehsalçılar haqqında məlumatları daha yüksək səviyyədə olan Məlumat Tərkibi Sistemi (DCS) vasitəsilə əldə edəcəyik.

Yaxşı, hesabatımız üçün məlumatları ehtiva edən cədvəli təyin etdik və sorğuya daxil etmək istədiyimiz sahələri göstərdik. Biz sorğu yaratmağa hazırıq. Sadəcə OK düyməsini basın:

pic_16.png

Query Wizard bağlanır və biz sorğunun mətnini alırıq:

pic_17.png
Yuxarı sağ pəncərədə mövcud sahələrin siyahısını görə bilərsiniz.

Bu sahələr üçün o qədər unikal parametrlər var ki, onları bu məqalədə təsvir etmək mümkün deyil. Beləliklə, burada etdiyimiz yeganə şey QuantityBalance adını aşağıdakı kimi dəyişdirməkdir:

pic_18.png

Sonra Data set links Calculated fields (bizim halda onlara ehtiyacımız yoxdur) atlayırıq və Resources tabına keçirik.

pic_19.png

Burada, hesabatımızda dərc olunan nəticələri hesablamaq üçün tətbiqin istifadə edəcəyi sahələri seçirik. Biz yalnız QuantityBalance-ı seçirik. Bu sahə üçün məbləğ almaq istədiyimiz sistemə deyin:


pic_20.png

Diqqət yetirin ki, tərtibatçıların yalnız SUM dəyərini deyil, MEAN, MINIMUM və MAXIMUM olanları, həmçinin QUANTITY-ni özündə əks etdirən ümumi funksiyalar seçimi var. SUM məcmu funksiyasını seçək:

pic_21.png

Parameters panelinə keçin:


pic_22.png

Gördüyünüz kimi, bizdə avtomatik yaradılmış vahid Period parametri var. Təbii ki, bunun haradan gəldiyini düşünə bilərsiniz. Siz əminsiniz ki, bu cədvəl üçün sorğular yaradan zaman heç bir parametr əlavə etməmişik. Yenə də bir parametr var, Period, əvvəlcədən təyin edilmiş və buna görə də biz onu Parameters bölməsində alırıq. Virtual cədvəlimizə və onun parametrlərinə nəzər salaq:

pic_23.png

Sorğuya hər hansı başqa parametr daxil etsəydik, məsələn Warehouse, bu parametr Period olduğu kimi Parameters bölməsində də mövcud olardı.

Tapşırığımız üçün onlara ehtiyacımız olmadığı üçün Templates Nested schemas (şablonlar və iç-içə sxemləri) ötürürük.

Settings bölməsinə keçin. Hesabatımız üçün əsas parametrləri burada müəyyən edirik.

pic_24.png

Hesabat strukturunu əl ilə yarada bilərsiniz, lakin sehrbazdan istifadə etmək daha rahatdır. Settings Wizard düyməsi ilə başlayın:

pic_25.png

Hesabat növünü seçin. Məhsulları və istehsalçıları sətirlərdə yerləşdirmək istədiyimiz üçün cədvələ üstünlük veririk, anbara düşən anbarlar və anbarlar isə sütunlara keçir. 2-ci seçimi seçin və Next düyməsini basın:

pic_26.png

Aşağıdakı formanı əldə edirsiniz:

pic_27.png

Burada hesabatın çap formasına daxil ediləcək sahələri təyin edirik: Product, QuantityBalance Warehouse:

pic_28.png

Bir qədər gözləyin! Hesabatda bizə lazım olan istehsalçılar haqqında nə demək olar? Bu sahəni necə görünür edək? Bu qədər asandır:

pic_29.png
Sonra cədvəl tənzimləmələrinə keçmək üçün Next düyməsini klikləyin:

pic_30.png
Burada biz uyğun hesab etdiyimiz kimi sətirlərə və ya sütunlara sahələri ayırırıq. ManufacturerProduct-u sətirlərə göndəririk. Məhsulların istehsalçı tərəfindən çeşidlənməsini istəyirsinizsə, bunu tam olaraq bu ardıcıllıqla etdiyinizə əmin olun. Warehouse-u sütunlara yerləşdirin:

pic_31.png

Next düyməsini klikləyin və növbəti tab-ə keçin:

pic_32.png

Bu nişan çeşidləmə üçün parametrləri müəyyənləşdirir. Bu dəfə ehtiyacımız yoxdur.

OK düyməsini klikləyin. İndi sehrbazın bizim üçün yaratdığı hesabat parametrləri strukturunu əldə edirik:

pic_33.png

Texniki baxımdan hesabatımız demək olar ki, hazırdır. Dialoq rejiminə keçmək, hesabatı yoxlamaq və dialoq rejimində bəzi düzəlişlər etmək vaxtıdır.

Ancaq bundan əvvəl daha bir alt sistem yaradaq və hesabatı ona yerləşdirək.

Təəccüblü deyil ki, alt sistemin adı Reports-dur (Hesabatlar):

pic_34.png
Hesabatı alt sisteminizə yerləşdirin:

pic_35.pngİndi dialoq rejimində 1C-ni işə salın və bir neçə təchizatçı faktura əlavə edin. Bu zaman biz onlarda müxtəlif anbarlardan istifadə etmək istəyirik. Beləliklə, iki fakturada Warehouse 1 (1-ci anbar), digər ikisində isə Warehouse 2 (2-ci anbar) təyin edin:

pic_36.pngİndi görək nə əldə edə bilərik. Altsistem Reports (Hesabatlar) açın, hesabat ekranına keçin və Run reports düyməsini basın. Əldə etdiyimiz budur:

pic_37.png
Təbriklər! Biz finiş xəttinə çatmışıq. Ancaq bunu bitmiş adlandırmadan əvvəl bir az gözəllik əlavə etməyi təklif edirəm.

Layout parametrləri həm Designer (Dizayner), həm də dialoq rejimində mövcuddur. İcazə verin, dialoq rejimində bunu necə edəcəyinizi sizə göstərim.

Açılan menyuya daxil olmaq üçün More actions düyməsini basın. Change option seçin.

pic_38.png

Demək olar ki, Designer-də olan ilə eyni olan hesabat parametrlərinə daxil olursunuz.

pic_39.png

Additional settings moduluna keçin və əvvəlcədən təyin edilmiş görünüş planlarından birini seçin.

pic_40.png
Hesabat parametrlərini bağlamaq üçün Finish editing üzərinə klikləyin. Run report ilə bir daha hesabat yaradın.

pic_41.png
Fərqi görürsən, elə deyilmi?

Yenə də belə görünür ki, Product.Manufacturer tam uyğun gəlmir:

pic_42.png
Bu sözü Manufacturer-a dəyişmək necə olar? Yuxarıda təsvir edildiyi kimi hesabat parametrlərinə qayıdın və Fields moduluna keçin.

pic_43.png
Kontekst menyusuna daxil olmaq üçün Product.Manufacturer sahəsinə sağ klikləyin. Set title... seçimini seçin:

pic_44.png

Sahənin adını razılaşdığımız kimi dəyişdirin:


pic_45.png

OK düyməsini, sonra Finish editing düyməsini klikləyin və bir daha hesabat yaradın:


pic_46.png

Yeni parametrlərimizin lazım olduğu kimi işlədiyini görürük.

Əla! Başqa nə etməliyik? Demək olar ki, unutmuşuq ki, istifadəçilər müəyyən bir tarix üçün səhmləri bilmək istəyə bilərlər. Hazırda biz yalnız cari tarix üçün hesabat yarada bilərik. Həmçinin, istifadəçilər hamısını deyil, müəyyən bir anbar üçün ehtiyatı bilmək istəyə bilər.

Beləliklə, hesabatın tam işləməsi üçün hesabat formasına Period Warehouse parametrlərini əlavə edirik. Birinci parametrlə nə edirik.

Əvvəlcədən təyin olunduğu üçün onu əlavə etmək asandır. Yenidən hesabat parametrlərinə qayıdın və Parameters modulunda User-defined settings item properties (istifadəçi tərəfindən müəyyən edilmiş parametrlər elementinin xüsusiyyətləri) düyməsini tapın.

pic_47.png

Düyməni klikləyin və Include in custom settings seçin:

pic_48.png

İndi bizdə Period parametrinin mövcud olduğunu görmək üçün hesabata qayıdırıq.


pic_49.png

İstifadəçilər müəyyən bir tarix üçün anbar ehtiyatı hesabatını yaratmaq imkanı əldə etdilər.

Əla! Məlumatların anbarlar üzrə filtrlənməsini mümkün edək. Biz bunu eyni şəkildə edirik: hesabat tənzimləmələrini açın və Filter bölməsinə keçin:

pic_50.png
Warehouse (Anbar) bölməsini sağ tərəfə çəkin:

pic_51.png

Bu səhifədə sağ klik vurun və kontekst menyusunda User-defined settings item properties (istifadəçi tərəfindən müəyyən edilmiş parametrlər elementinin xüsusiyyətləri) seçin.

pic_52.png

Include in custom settings seçimini işarələyin.

pic_53.png

Hesabata qayıtdıqda Warehouse (Anbar) parametrinin əlçatan olduğunu görürük.

pic_54.png

Beləliklə, istifadəçilər artıq müəyyən bir tarix və anbar üçün məlumat əldə edə bilərlər.

pic_55.png

Son olaraq yenilənmiş parametrləri daha sonra istifadə etmək üçün, onları yadda saxlamalıyıq:

pic_56.png

İstədiyiniz adı seçin:

pic_57.png

İstifadəçilər növbəti dəfə hesabat seçəndə yadda saxlanılan parametrlər aktiv qalır:

pic_58.png

Deyəsən burada işimiz bitdi. Biz istifadəçilər üçün şirkətin anbar ehtiyatına nəzarət etmək üçün əlverişli alət yaratdıq. Hesabat bütün anbarlar və ya onlardan yalnız biri haqqında məlumat verə bilər. Bununla da istifadəçilər istənilən tarix üçün məlumat əldə edə bilərlər.

Növbəti nə gəlir? Hələlik biz miqdarlarla, yəni alınan, satılan və ya anbarlarda mövcud olan məhsulların sayı ilə məşğul oluruq. Ancaq hamımız bilirik ki, hər hansı bir işin əsas məqsədi mənfəət əldə etməkdir və buna görə də miqdarlarla məşğul olmaq tamamilə kifayət deyil. Alış-satışlarımızı pulla dəyərləndirməliyik. Bu qazanc əldə edib-etməməyimizi və nə qədər yaxşı olduğumuzu başa düşməyə aparan yoldur.

Gələcək məqalələrdə bu barədə danışacağıq.


1C haqqında suallarınız var? Gəlin müzakirə edək!

1C OPTİMA AZƏRBAYCAN mütəxəssislərindən məsləhət ala, qiymətləri dəqiqləşdirə və həll sifariş edə bilərsiniz. Telefon, e-poçt və ya geri zəng tələb etməklə bizimlə əlaqə saxlayın.

+994 12 310 26 27