BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1.
Implementasi Sistem Pada bab ini akan dilakukan implementasi dan pengujian terhadap sistem yang telah dibuat.
Implementasi merupakan penerapan dari proses sebelumnya yakni proses perancangan (design). Dari hasil tahap analisa, perancangan dan development, kemudian di lanjutkan dengan langkah selanjutnya yaitu pengimplementasian. Pada tahapan implementasi terdapat dua cakupan yaitu spesifikasi kebutuhan sistem yang meliputi perangkat keras (hardware) dan perangkat lunak (software) dan implementasi sistem aplikasi pendukung yang meliputi proses penerapan dari proses design dari antarmuka (user interface) sesuai dengan rancangan yang telah ada. Setelah diimplementasikan maka dilakukan pengujian terhadap sistem dan dilihat kekurangan - kekurangan pada sistem untuk pengembangan sistem selanjutnya. Dan berikut merupakan spesifikasi minimal perangkat yang digunakan. 1. Perangkat keras a. Jenis perangkat
: PC
b. Processor
: Pentium IV
c. RAM
: 500 Mb
d. Harddisk
: 30 GB
2. Perangkat lunak
4.2.
a. Sistem operasi
: Windows XP
b. Tools
: Microsoft .Net FrameWork 4
Implementasi Basis Data Tahap awal dalam pembuatan aplikasi ini yaitu pembuatan database. Database pada aplikasi
ini menggunakan SQL. Sedangkan untuk alat bantu berupa GUI (Graphical User Interface) yang digunakan untuk pembuatan database menggunakan SQL Server 2008. Aplikasi ini mempunyai nama database yaitu YBS2. Berikut ini adalah implementasi basis data yang ada pada sistem informasi penyusunan master budget ini.
83 http://digilib.mercubuana.ac.id/
1. ActDesc
Gambar 4.1 Tampilan Tabel ActDesc Code : CREATE TABLE [dbo].[ActDesc]( [ActDescId] [char](2) NOT NULL, [ActDesc] [varchar](50) NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_ActDesc] PRIMARY KEY CLUSTERED ( [ActDescId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
2. AdlHeader
Gambar 4.2 Tampilan Tabel AdlHeader Code : CREATE TABLE [dbo].[ADLHeader]( [ADLId] [char](4) NOT NULL, [BudgetClass] [char](4) NULL, [BudgetClassDesc] [varchar](100) NULL, [FormDesc] [varchar](20) NULL, [DICWC] [char](4) NULL,
84 http://digilib.mercubuana.ac.id/
[DICWCDesc] [varchar](100) NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_ADLHeader] PRIMARY KEY CLUSTERED ( [ADLId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
3. AdlTrans
Gambar 4.3 Tampilan Tabel AdlTrans Code : CREATE TABLE [dbo].[ADLTrans]( [ADLId] [char](6) NOT NULL, [UserWC] [char](4) NOT NULL, [UserWCDesc] [varchar](50) NULL, CONSTRAINT [PK_ADLTrans] PRIMARY KEY CLUSTERED ( [ADLId] ASC, [UserWC] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
4. BudgetClass
Gambar 4.4 Tampilan Tabel BudgetClass Code : CREATE TABLE [dbo].[BudgetClass]( [BudgetClass] [char](4) NOT NULL, [FormDesc] [varchar](50) NULL ) ON [PRIMARY] SET ANSI_PADDING ON
85 http://digilib.mercubuana.ac.id/
ALTER TABLE [dbo].[BudgetClass] ADD [BudgetClassDesc] [varchar](100) NULL ALTER TABLE [dbo].[BudgetClass] ADD [RelatedtoSalesUnit] [bit] NULL ALTER TABLE [dbo].[BudgetClass] ADD [CreatedDate] [datetime] NULL SET ANSI_PADDING OFF ALTER TABLE [dbo].[BudgetClass] ADD [CreatedBy] [varchar](10) NULL ALTER TABLE [dbo].[BudgetClass] ADD [ModifiedDate] [datetime] NULL ALTER TABLE [dbo].[BudgetClass] ADD [ModifiedBy] [varchar](10) NULL ALTER TABLE [dbo].[BudgetClass] ADD [RecId] [int] IDENTITY(1,1) NOT NULL CONSTRAINT [PK_BudgetClass] PRIMARY KEY CLUSTERED ( [BudgetClass] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
5. WorkCenter
Gambar 4.5 Tampilan Tabel WorkCenter Code : CREATE TABLE [dbo].[WorkCenter2]( [WC] [char](4) NOT NULL, [WCDesc] [varchar](500) NULL, [CostAllocationDesc] [varchar](20) NULL, [MPPAllocation] [varchar](20) NULL, [MPPPermission] [bit] NULL, [BudgetPermission] [bit] NULL, [DepartmentDesc] [varchar](50) NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_WorkCenter2] PRIMARY KEY CLUSTERED ( [WC] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
86 http://digilib.mercubuana.ac.id/
6. Department
Gambar 4.6 Tampilan Tabel Department Code : CREATE TABLE [dbo].[Department]( [DepartmentId] [char](2) NOT NULL, [DepartmentDesc] [varchar](50) NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_Department] PRIMARY KEY CLUSTERED ( [DepartmentId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
7. CostAllocation
Gambar 4.7 Tampilan Tabel CostAllocation CREATE TABLE [dbo].[CostAllocation]( [CostAllocationDesc] [varchar](20) NOT NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_CostAllocation] PRIMARY KEY CLUSTERED ( [CostAllocationDesc] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
87 http://digilib.mercubuana.ac.id/
8. Product
Gambar 4.8 Tampilan Tabel Product Code : CREATE TABLE [dbo].[Product]( [ProductDesc] [varchar](10) NOT NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED ( [ProductDesc] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
9. Model
Gambar 4.9 Tampilan Tabel Model Code : CREATE TABLE [dbo].[Model]( [Model] [varchar](20) NOT NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, PRIMARY KEY CLUSTERED ( [Model] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
88 http://digilib.mercubuana.ac.id/
10. Costumer
Gambar 4.10 Tampilan Tabel Costumer Code : CREATE TABLE [dbo].[Costumer]( [CostumerDesc] [varchar](10) NOT NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, PRIMARY KEY CLUSTERED ( [CostumerDesc] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
11. Form
Gambar 4.11 Tampilan Tabel Form Code : CREATE TABLE [dbo].[Form]( [FormDesc] [varchar](50) NOT NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_Form] PRIMARY KEY CLUSTERED ( [FormDesc] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
89 http://digilib.mercubuana.ac.id/
12. Sales
90 http://digilib.mercubuana.ac.id/
Gambar 4.12 Tampilan Tabel Sales Code : CREATE TABLE [dbo].[Sales]( [SalesId] [int] IDENTITY(1,1) NOT NULL, [Product] [varchar](10) NULL, [Market] [varchar](50) NULL, [Customer] [varchar](10) NULL, [Category] [varchar](10) NULL, [Model] [varchar](100) NULL, [QJan] [float] NULL, [PJan] [money] NULL, [AmountJan] [money] NULL, [QFeb] [float] NULL, [PFeb] [money] NULL, [AmounFeb] [money] NULL, [QMar] [float] NULL, [PMar] [money] NULL, [AmountMar] [money] NULL, [QApr] [float] NULL, [PApr] [money] NULL, [AmountApr] [money] NULL, [QMei] [float] NULL, [PMei] [money] NULL, [AmountMei] [money] NULL, [QJun] [float] NULL, [PJun] [money] NULL, [AmountJun] [money] NULL, [QJul] [float] NULL, [PJul] [money] NULL, [AmountJul] [money] NULL, [QAug] [float] NULL, [PAug] [money] NULL, [AmountAug] [money] NULL, [QSep] [float] NULL, [PSep] [money] NULL, [AmountSep] [money] NULL, [QOct] [float] NULL, [POct] [money] NULL, [AmountOct] [money] NULL, [QNov] [float] NULL, [PNov] [money] NULL, [AmountNov] [money] NULL, [QDec] [float] NULL, [PDec] [money] NULL, [AmountDec] [money] NULL, [Year] [int] NULL, [TotQuantity] [float] NULL, [TotAmount] [money] NULL,
91 http://digilib.mercubuana.ac.id/
[CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [BudgetClass] [varchar](10) NULL, [Outlook] [varchar](20) NULL, CONSTRAINT [PK_Sales] PRIMARY KEY CLUSTERED ( [SalesId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
13. MaterialCostMonthly
Gambar 4.13 Tampilan Tabel MaterialCostMonthly Code : CREATE TABLE [dbo].[MaterialCostMonthly]( [MatId] [int] IDENTITY(1,1) NOT NULL, [Product] [varchar](10) NULL, [Market] [varchar](20) NULL, [Costumer] [varchar](10) NULL, [Category] [varchar](10) NULL,
92 http://digilib.mercubuana.ac.id/
[Model] [varchar](100) NULL, [AmountJan] [money] NULL, [AmountFeb] [money] NULL, [AmountMar] [money] NULL, [AmountApr] [money] NULL, [AmountMei] [money] NULL, [AmountJun] [money] NULL, [AmountJul] [money] NULL, [AmountAug] [money] NULL, [AmountSep] [money] NULL, [AmountOct] [money] NULL, [AmountNov] [money] NULL, [AmountDec] [money] NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [year] [int] NULL, [reviewstatus] [varchar](2) NULL, CONSTRAINT [PK_MaterialCostMonthly] PRIMARY KEY CLUSTERED ( [MatId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
14. EmpCLB
Gambar 4.14 Tampilan Tabel EmpCLB 93 http://digilib.mercubuana.ac.id/
Code : CREATE TABLE [dbo].[EmplCLB]( [EmpCLBId] [int] IDENTITY(1,1) NOT NULL, [BudgetClass] [varchar](10) NULL, [Description] [varchar](50) NULL, [ProductDesc] [varchar](10) NULL, [Jan] [money] NULL, [Feb] [money] NULL, [Mar] [money] NULL, [Apr] [money] NULL, [Mei] [money] NULL, [Jun] [money] NULL, [Jul] [money] NULL, [Aug] [money] NULL, [Sep] [money] NULL, [Oct] [money] NULL, [Nov] [money] NULL, [Dec] [money] NULL, [Total] [money] NULL, [Year] [int] NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [Type] [varchar](10) NULL, [OutlookStatus] [varchar](20) NULL, CONSTRAINT [PK_Table_1] PRIMARY KEY CLUSTERED ( [EmpCLBId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
15. MPP
Gambar 4.15 Tampilan Tabel MPP 94 http://digilib.mercubuana.ac.id/
Code : CREATE TABLE [dbo].[MPP]( [MPPId] [int] IDENTITY(1,1) NOT NULL, [UserWC] [varchar](10) NULL, [UserWCDesc] [varchar](50) NULL, [MPPAllocation] [varchar](25) NULL, [CostAllocation] [varchar](20) NULL, [MPPQuantity] [int] NULL, [OvertimeQuantity] [int] NULL, [Gol] [varchar](20) NULL, [Month] [varchar](5) NULL, [Year] [int] NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [OutlookStatus] [varchar](20) NULL, [GrabStatus] [varchar](2) NULL, [reviewstatus] [varchar](2) NULL, CONSTRAINT [PK_MPP] PRIMARY KEY CLUSTERED ( [MPPId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
16. ReportHeader
Gambar 4.16 Tampilan Tabel ReportHeader Code : CREATE TABLE [dbo].[ReportHeader]( [ReportId] [varchar](10) NOT NULL, [ReportDesc] [varchar](80) NULL, [ReportCategoryDesc] [varchar](100) NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [char](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, CONSTRAINT [PK_ReportHeader] PRIMARY KEY CLUSTERED ( [ReportId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
95 http://digilib.mercubuana.ac.id/
17. ReportTrans
Gambar 4.17 Tampilan Tabel ReportTrans Code : CREATE TABLE [dbo].[ReportTrans]( [ReportId] [varchar](10) NOT NULL, [BudgetClass] [varchar](10) NOT NULL, [BudgetClassDesc] [varchar](80) NULL, CONSTRAINT [PK_ReportTrans] PRIMARY KEY CLUSTERED ( [ReportId] ASC, [BudgetClass] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
18. ItemList
Gambar 4.18 Tampilan Tabel ItemList Code : CREATE TABLE [dbo].[ItemList]( [ItemId] [varchar](25) NOT NULL, [ItemName] [varchar](max) NULL, [BudgetClass1] [varchar](10) NULL, [ItemCategory] [varchar](80) NULL, [DICWC] [varchar](10) NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, [BudgetClass2] [varchar](10) NULL, [BudgetClass3] [varchar](10) NULL, CONSTRAINT [PK_ItemList] PRIMARY KEY CLUSTERED ( [ItemId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
96 http://digilib.mercubuana.ac.id/
19. Dimension
Gambar 4.19 Tampilan Tabel Dimension Code : CREATE TABLE [dbo].[Dimension]( [DimensionId] [int] IDENTITY(1,1) NOT NULL, [ItemId] [varchar](50) NULL, [DimensionName] [varchar](80) NULL, [Price] [float] NULL, [Currency] [varchar](5) NULL, CONSTRAINT [PK_Dimension] PRIMARY KEY CLUSTERED ( [DimensionId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]
20. ReqDeptBudgetMonthly
Gambar 4.20 Tampilan Tabel ReqDeptBudgetMonthly 97 http://digilib.mercubuana.ac.id/
Code : CREATE TABLE [dbo].[ReqDeptBudgetMonthly]( [ReqMonthlyId] [varchar](10) NOT NULL, [ActivityPlan] [varchar](max) NOT NULL, [ItemId] [varchar](25) NOT NULL, [ItemName] [varchar](max) NULL, [BudgetClass] [varchar](10) NOT NULL, [BudgetClassDesc] [varchar](80) NOT NULL, [FormDesc] [varchar](20) NOT NULL, [DICWC] [varchar](10) NOT NULL, [DICWCDesc] [varchar](50) NOT NULL, [UserWC] [varchar](10) NOT NULL, [ReqStatusDesc] [varchar](50) NOT NULL, [OpeningCLMonth] [varchar](20) NOT NULL, [ActDesc] [varchar](50) NOT NULL, [UsedMonth] [datetime] NOT NULL, [Dimension] [varchar](50) NULL, [OutlookStatus] [varchar](15) NULL, [Year] [int] NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] IDENTITY(1,1) NOT NULL, [CatSequence] [varchar](10) NULL, [GrabStatus] [varchar](2) NULL, [Jan] [float] NULL, [Feb] [float] NULL, [Mar] [float] NULL, [Apr] [float] NULL, [Mei] [float] NULL, [Jun] [float] NULL, [Jul] [float] NULL, [Aug] [float] NULL, [Sep] [float] NULL, [Oct] [float] NULL, [Nov] [float] NULL, [Dec] [float] NULL, CONSTRAINT [PK_ReqDeptBudgetMonthly] PRIMARY KEY CLUSTERED ( [ReqMonthlyId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
21. Depreciation
Gambar 4.21 Tampilan Tabel Depreciation 98 http://digilib.mercubuana.ac.id/
CREATE TABLE [dbo].[Depreciation]( [DepreciationId] [int] IDENTITY(1,1) NOT NULL, [ReqMonthlyId] [varchar](10) NULL, [AssetCode] [varchar](50) NULL, [BudgetClassAsset] [varchar](10) NULL, [BudgetClassDepreciation] [varchar](10) NULL, [AssetName] [varchar](max) NULL, [Currency] [varchar](5) NULL, [OriginalAmount] [money] NULL, [UsedMonth] [datetime] NULL, [AssetAge] [int] NULL, [Shift] [int] NULL, [RetiredMonth] [datetime] NULL, [DepreciationPerMonth] [money] NULL, [CreatedDate] [datetime] NULL, [CreatedBy] [varchar](10) NULL, [ModifiedDate] [datetime] NULL, [ModifiedBy] [varchar](10) NULL, [RecId] [int] NULL, [BudgetClassDescription] [varchar](50) NULL, [Year] [int] NULL, [UserWC] [varchar](10) NULL, CONSTRAINT [PK_Depreciation] PRIMARY KEY CLUSTERED ( [DepreciationId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
4.3.
Implementasi Antar Muka Berikut ini adalah implementasi antar muka sesuai dengan rancangan layar yang telah
dirancang sebelumnya. 1. Cost Allocation
Gambar 4.22 Tampilan Form Cost Allocation Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration” 2. Pilih menu Cost Allocation 3. Pada form Cost Allocation user hanya melakukan update terhadap nilai dari list cost allocation
99 http://digilib.mercubuana.ac.id/
4. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan Tekan tombol “Enter” dan data tersimpan Code : Imports System.Data.SqlClient Public Class CostAllocationForm Inherits YutakaBudgetSystem.TransForm Dim kueri, updates, kueri2 As String Dim cls As New clsRecordSet Dim dtb1 As DataTable Dim dccAX As New DataControlClass Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) C1DataViewSet1.Views(2).AddNew() gridHeader.MoveLast() End Sub Private Sub AsSETCategoryForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = gridHeader End Sub Private Sub btnDelete_Click(sender As System.Object, e As System.EventArgs) Dim dccdel As New DataControlClass If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then kueri = "DELETE FROM CostAllocationtoProduct WHERE CostAllocationDesc = '" & gridHeader.CurrentRow.Cells("CostAllocationDesc").Value & "'" & _ "and ProductDesc = '" & gridHeader.CurrentRow.Cells("ProductDesc").Value & "'" dccdel.ExecuteNonQuery(kueri) gridHeader.CurrentRow.Delete() End If End Sub
2. WorkCenter
Gambar 4.23 Tampilan Form WorkCenter
100 http://digilib.mercubuana.ac.id/
Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration” 2. Pilih menu Work Center 3. Pada form Work Center untuk melakukan penambahan data, pilih tombol “New” dan akan muncul baris baru. 4. Kemudian lanjutkan dengan pengisian data Work Center,Work Center Description, Cost Allocation, Budget Permission,Department, sedangkan untuk Created Date,
MPP Allocation,MPP permission,
Created By Modified Date, Modified By akan otomatis terisi bersamaan saat user mulai melakukan pengisian data. 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi. Proses Delete 1. Pilh baris data yang akan dihapus 2. Kemudian pilih tombol delete dan akan muncul command untuk memastikan data yang akan dihapus,jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan Tekan tombol “Enter” dan data tersimpan Code : Imports System.Data.SqlClient Public Class WorkCenterForm2 Inherits YutakaBudgetSystem.TransForm Dim kueri As String Dim dcc As New DataControlClass Private Sub WorkCenterForm2_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = gridHeader End Sub Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles btnAddWC.Click C1DataViewSet1.Views(0).AddNew() gridHeader.MoveLast() End Sub Private Sub WorkCenterForm2_Load(sender As System.Object, e As System.EventArgs) Handles Me.Load CreateValueList2("CostAllocationDesc", gridHeader, C1DataViewSet1, "CostAllocation") CreateValueList("MPPAllocation", gridHeader, C1DataViewSet1, True) CreateValueList4("DepartmentDesc", gridHeader, C1DataViewSet1, "SELECT DepartmentDesc FROM Department") ' CreateValueList("BudgetPermission", gridHeader, C1DataViewSet1, True) End Sub
101 http://digilib.mercubuana.ac.id/
3. Update Form
Gambar 4.24 Tampilan Form Update Form Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration” 2. Pilih menu Update Form 3. Pada form Update Form untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru 4. Kemudian lanjutkan dengan mengisi data Form Descriptionnya,sedangkan untuk kolom CreatedDate,CreatedBy,ModifiedDate,akan otomatis terisi pada saat user mulai melakukan pengisian data pada tiap row nya. 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi Proses Delete 1. Pilh baris data yang akan dihapus 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus,jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan Tekan tombol “Enter” untuk menyimpan data. Code : Public Class UpdateForm Inherits YutakaBudgetSystem.TransForm
102 http://digilib.mercubuana.ac.id/
Dim kueri As String Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles btnAddWC.Click C1DataViewSet1.Views(0).AddNew() gridHeader.MoveLast() End Sub Private Sub btnDelete_Click(sender As System.Object, e As System.EventArgs) Handles btnDelete.Click Dim dccdel As New DataControlClass If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then gridHeader.CurrentRow.Delete() C1DataViewSet1.Update() End If End Sub Private Sub UpdateForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = gridHeader End Sub End Class
4. Budget Class
Gambar 4.25 Tampilan Form Budget Class Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration” 2. Pilih menu Budget Class 3. Pada form Budget Class untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru.
103 http://digilib.mercubuana.ac.id/
4. Kemudian lanjutkan dengan pengisian data Budget Class,Budget Class Description,Form,Related to Sales Unit,sedangkan untuk Created Date, Created By,Modified Date, Modified By akan otomatis terisi bersamaan saat user mulai melakukan pengisian data 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi Proses Delete 1. Pilh baris data yang akan dihapus 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan, Tekan tombol “Enter” untuk menyimpan data. Code : Imports System.Data.SqlClient Public Class BudgetClassForm Inherits YutakaBudgetSystem.TransForm Dim Kueri As String Dim dcc As New DataControlClass Private Sub BudgetClassForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = GridEX1 End Sub Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles btnAddWC.Click C1DataViewSet1.Views(0).AddNew() GridEX1.MoveLast() End Sub Private Sub BudgetClassForm_Load(sender As System.Object, e As System.EventArgs) Handles Me.Load CreateValueList2("FormDesc", GridEX1, C1DataViewSet1, "Form") End Sub Private Sub BtnDelete_Click_1(sender As System.Object, e As System.EventArgs) Handles BtnDelete.Click If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then GridEX1.CurrentRow.Delete() C1DataViewSet1.Update() End If End Sub Private Sub GridEX1_CellUpdated(sender As Object, e As Janus.Windows.GridEX.ColumnActionEventArgs) Handles GridEX1.CellUpdated Select Case e.Column.Key Case "BudgetClassDesc" Kueri = "update adlheader set budgetclassdesc = '" & GridEX1.GetValue("BudgetClassdesc") & "' where budgetclass = '" & GridEX1.GetValue("BudgetClass") & "'" dcc.ExecuteNonQuery(Kueri) End Select End Sub End Class
104 http://digilib.mercubuana.ac.id/
5. Asset Category
Gambar 4.26 Tampilan Form Asset Category Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration” 2. Pilih menu Asset Category 3. Pada form Asset Category untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru. 4. Kemudian lanjutkan dengan pengisian data Budget Class, Asset Age,Shift,sedangkan untuk Created Date, Created By Modified Date, Modified By akan otomatis terisi bersamaan saat user mulai melakukan pengisian data. 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi. Proses Delete 1. Pilh baris data yang akan dihapus 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus,jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan,tekan tombol “Enter” untuk menyimpan data. 105 http://digilib.mercubuana.ac.id/
Code : Imports System.Data.SqlClient Public Class AssetCategoryForm Inherits YutakaBudgetSystem.TransForm Dim kueri As String Private Sub AssetCategoryForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = gridHeader End Sub Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles btnAddWC.Click C1DataViewSet1.Views(0).AddNew() gridHeader.MoveToRowIndex(C1DataViewSet1.Views("AssetCategory").Count) End Sub Private Sub btnDelete_Click(sender As System.Object, e As System.EventArgs) Handles btnDelete.Click Dim dccdel As New DataControlClass If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then ' kueri = "DELETE FROM AssetCategory WHERE BudgetClassAsset = '" & gridHeader.CurrentRow.Cells("BudgetClass").Value & "'" ' dccdel.ExecuteNonQuery(kueri) gridHeader.CurrentRow.Delete() C1DataViewSet1.Update() End If End Sub Private Sub AssetCategoryForm_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load CreateValueList4("BudgetClass", gridHeader, C1DataViewSet1, "SELECT BudgetClass FROM BudgetClass WHERE FormDesc = 'Investment'") CreateValueList("Shift", gridHeader, C1DataViewSet1) End Sub End Class
6. Account Distribution List
Gambar 4.27 Tampilan Form Account Distribution List 106 http://digilib.mercubuana.ac.id/
Keterangan : Proses Input Data 1. Setelah Login pada Aplikasi YBS pilih menu navigasi “Administration” 2. Pilih menu Account Distribution List 3. Pada form Account Distribution List untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru pada table header. 4. Kemudian lanjutkan dengan pemilihan data Budget Class,DIC WC, sedangkan untuk Created Date, Created By, Modified Date, Modified By akan otomatis terisi bersamaan saat user mulai melakukan pengisian data setelah selesai melakukan pengisian data tekan tombol “Enter” untuk melakukan penyimpanan data. 5. Untuk satu row pada header yang telah diisi data dan dilanjutkan pada pemilihan User WC nya dengan klik tombol “New” untuk grid line,setelah selesai melakukan pengisian data tekan tombol “Enter” untuk melakukan penyimpanan data. Proses Delete 1. Pilh baris data yang akan dihapus 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. proses delete pada form ini ada 2, yaitu pada bagian header dan pada bagian detailnya. Proses Edit Dalam proses pengeditan data user melakukan ubah data langsung pada grid header dan setelah selesai mengubah data,tekan tombol “Enter” untuk menyimpan data. Code : Public Class ADLForm Inherits YutakaBudgetSystem.TransForm Private rdr, rdr2 As SqlClient.SqlDataReader Private cData, cls As New clsRecordSet Dim kueri, kueri2 As String Dim dcc As New DataControlClass Private Sub ADLForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = dataMain Me.trxDataGrid = gridHeader End Sub Private Sub BtnDelLine_Click(sender As System.Object, e As System.EventArgs) Handles BtnDelLine.Click Dim dccdel As New DataControlClASs If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then gridLine.CurrentRow.Delete() dataMain.Update() End If End Sub Private Sub BtnSave_Click_1(sender As System.Object, e As System.EventArgs) gridLine.Enabled = False gridHeader.Enabled = True BindingNavigator1.Enabled = True Dim dccIn As New DataControlClASs
107 http://digilib.mercubuana.ac.id/
7. Part report
Gambar 4.28 Tampilan Form Part Report Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration”. 2. Pilih menu Part Report. 3. Pada form Part Report untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru pada grid header. 4. Kemudian lanjutkan dengan pengisian data Part report,Report Category. 5. Setelah selesai melakukan pengisian data pada setiap row grid header klik tombol ”Enter” dan data pada grid header akan tersimpan lanjutkan dengan pengisian data pada grid line dengan klik tombol “New” untuk memunculkan baris baru, dan klik “Enter” untuk menyimpan data. Proses Delete 1. Pilh baris data yang akan dihapus pada grid header 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus.Proses delete pada form ini ada 2, yaitu pada bagian header dan pada bagian detailnya. Proses Edit Dalam proses pengeditan data user dapat melakukan pengeditan langsung pada grid header,dan setelah update selesai tekan tombol “Enter” untuk menyimpan data. Code : Public Class PartReportForm Inherits YutakaBudgetSystem.TransForm Private rdr As SqlClient.SqlDataReader Private cdata, cls, cls1 As New clsRecordSet
108 http://digilib.mercubuana.ac.id/
Dim kueri, kueri2, kueri3, check As String Dim dcc As New DataControlClass Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles btnAddWC.Click dataMain.Views(0).AddNew() Dim NextSeq As String = CreateAutoNumber("PartReportForm") gridHeader.MoveToRowIndex(dataMain.Views("ReportHeader").Count) gridHeader.CurrentRow.Cells("ReportId").Value = "Rep" + NextSeq UpdateNumberSequence("PartReportForm", 1) End Sub Private Sub PartReportForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = dataMain Me.trxDataGrid = gridHeader End Sub Private Sub btnDelete_Click(sender As System.Object, e As System.EventArgs) Handles btnDelete.Click Dim dccdel As New DataControlClass If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then kueri = "DELETE FROM ReportTrans WHERE ReportId = '" & gridHeader.CurrentRow.Cells("ReportId").Value & "'"" dccdel.ExecuteNonQuery(kueri) dataMain.Update() gridHeader.CurrentRow.Delete() End If End Sub
8. Depreciation Mapping
Gambar 4.29 Tampilan Form Depreciation Mapping Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration”. 2. Pilih menu Mapping Depreciation. 3. Pada form Mapping Depreciation untuk melakukan penambahan data mapping New asset, klik tombol “New” dan akan muncul baris baru pada grid bagian atas. Dan pada grid bawah adalah untuk penambahan data mapping existing asset. 4. Kemudian lanjutkan dengan pengisian data. 109 http://digilib.mercubuana.ac.id/
5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi Proses Delete 1. Pilh baris data yang akan dihapus 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan,tekan tombol “Enter” untuk menyimpan data. Code : Public Class DepreciationMappingForm Inherits YutakaBudgetSystem.TransForm Dim cData, cls As New clsRecordSet Dim rdr, rdr2 As SqlClient.SqlDataReader Dim kueri As String Dim dcc2 As New DataControlClass Dim dcc As New DataControlClass Private Sub DepreciationMappingForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = GridEX1 End Sub Private Sub GridEX1_CellUpdated(sender As Object, e As Janus.Windows.GridEX.ColumnActionEventArgs) Handles GridEX1.CellUpdated Select Case e.Column.Key Case "BudgetClassAsset" rdr = cls.GetReaderSQL("Select count(BudgetClass) as jml FROM BudgetClass where BudgetClass = '" & GridEX1.GetValue("BudgetClassAsset") & "' ") Do While rdr.Read() If rdr(0) = 0 Then ShowInfo("Budget Class yang diinputkan salah") GridEX1.SetValue("BudgetClassAsset", "") GridEX1.SetValue("BudgetClassAssetDesc", "") End If Loop rdr.Close() rdr2 = cData.GetReaderSQL("select BudgetClassAsset from DepreciationMapping where BudgetClassDepreciation = '" & GridEX1.GetValue("BudgetClassDepreciation") & "'") Do While rdr2.Read If GridEX1.GetValue("BudgetClassAsset") = rdr2(0) Then ShowInfo("Budget Class Asset dengan BudgetClass Depreciation " & GridEX1.GetValue("BudgetClassDepreciation") & " sudah ada") GridEX1.SetValue("BudgetClassAsset", "") GridEX1.SetValue("BudgetClassAssetDesc", "") End If Loop rdr2.Close() Case "BudgetClassDepreciation" rdr = cls.GetReaderSQL("Select count(BudgetClass) as jml FROM BudgetClass where BudgetClass = '" & GridEX1.GetValue("BudgetClassDepreciation") & "' ") Do While rdr.Read() If rdr(0) = 0 Then ShowInfo("Budget Class yang diinputkan salah") GridEX1.SetValue("BudgetClassDepreciation", "") GridEX1.SetValue("BudgetClassDepreciationDesc", "") End If Loop rdr.Close()
110 http://digilib.mercubuana.ac.id/
9. Assumption Type
Gambar 4.30 Tampilan Form Assumption Type Keterangan : Proses Input Data 1. Setelah Login pada Aplikasi YBS pilih menu navigasi “Administration”. 2. Pilih menu Assumption Type. 3. Pada form Assumption Type untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru. 4. Kemudian lanjutkan dengan pengisian data Assumption Description,sedangkan untuk Assumption ID akan otomatis by system. 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi. Proses Delete 1. Pilh baris data yang akan dihapus 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan,tekan tombol “Enter” untuk menyimpan data. Code : Imports System.Data.SqlClient Public Class AssumptionTypeForm Inherits YutakaBudgetSystem.TransForm Dim kueri, kueriin, kueri2 As String Dim dtb As DataTable Dim dcc, dcc2, dcc3 As New DataControlClass Dim cls, cls1, cls2, cls3, cls4, cls5 As New clsRecordSet Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles btnAddWC.Click C1DataViewSet1.Views(0).AddNew()
111 http://digilib.mercubuana.ac.id/
GridEX1.MoveLast() End Sub Private Sub BtnDelete_Click(sender As System.Object, e As System.EventArgs) Handles BtnDelete.Click Dim dccdel As New DataControlClass If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then GridEX1.CurrentRow.Delete() C1DataViewSet1.Update() End If End Sub Private Sub AssumptionTypeForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = GridEX1 End Sub
10. Macro Assumption
Gambar 4.31 Tampilan Form Macro Assumption Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration”. 2. Pilih menu Macro Assumption. 3. Pada form Macro Assumption untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru untuk periode 3 tahun. 4. Kemudian lanjutkan dengan pemilihan Assumption Desc, Currency dan pengisian Value Assumption. 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi. Proses Delete 1. Pilh baris data yang akan dihapus.
112 http://digilib.mercubuana.ac.id/
2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan,tekan tombol “Enter” untuk menyimpan data. Code : Imports System.Data.SqlClient Imports Janus.Windows.GridEX Public Class MacroAssumptionForm Inherits YutakaBudgetSystem.TransForm Private rdr As SqlDataReader Private cData As New clsRecordSet Dim kueri As String Dim kueriAssId, WHEREtahun As String Dim sql, thn As String Dim clsjeda As New clsRecordSet Dim dcc, dccAx As New DataControlClass Dim kueriin As String Dim tahunskr As Integer Dim dtb As New DataTable Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles mnNew.Click tahunskr = CInt(Format(Now, "yyyy")) + 1 dcc = New DataControlClass Dim dccIn As New DataControlClass For looptahun As Integer = 0 To 3 rdr = cData.GetReaderSQL("select '" & tahunskr + looptahun & "' as Year,b.AssumptionTypeId,b.AssumptionTypeDesc," & _ "a.CurrencyDesc from AssumptionType b inner join Currency a on b.AssumptionTypeDesc = a.AssumptionTypeDesc" & _ " where '" & tahunskr + looptahun & "' not in (select Year from MacroAssumption) or b.AssumptionTypeDesc not in " & _ "(select AssumptionTypeDesc from MacroAssumption where Year = '" & tahunskr + looptahun & "')") Do While rdr.Read() kueriin = "INSERT INTO MacroAssumption (Year,AssumptionTypeId,AssumptionTypeDesc,Currency,Value,CreatedDate,CreatedBy) VALUES " & _ "('" & rdr(0) & "','" & rdr(1) & "','" & rdr(2) & "','" & rdr(3) & "',0.0,'" & Now & "','" & UserId & "')" dccIn.ExecuteNonQuery(kueriin) Loop rdr.Close() Next dtb = dccAx.XDataTable("SELECT * FROM MacroAssumption WHERE (year = " & tahunskr & " or year = " & CInt(tahunskr) + 1 & " or year = " & CInt(tahunskr) + 2 & " or year = " & CInt(tahunskr) + 3 & ") ") GridEX1.SetDataBinding(dtb, "") GridEX1.MoveLast() End Sub Private Sub BtnDelete_Click(sender As System.Object, e As System.EventArgs) Handles BtnDelete.Click Dim dccdel As New DataControlClass If MsgBox("Apakah anda yakin akan menghapus data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then kueri = "DELETE FROM MacroAssumption WHERE Year = '" & GridEX1.CurrentRow.Cells("Year").Value & "' and" & _ " AssumptionTypeId = '" & GridEX1.CurrentRow.Cells("AssumptionTypeId").Value & "' and Currency = '" & GridEX1.CurrentRow.Cells("Currency").Value & "'" dccdel.ExecuteNonQuery(kueri) GridEX1.CurrentRow.Delete()
113 http://digilib.mercubuana.ac.id/
11. Model
Gambar 4.32 Tampilan Form Model Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Administration”. 2. Pilih menu Model. 3. Pada form Model untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru. 4. Kemudian lanjutkan dengan pengisian data Model, sedangkan untuk Created Date, Created By,Modified Date, Modified By akan otomatis terisi bersamaan saat user mulai melakukan pengisian data. 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi. Proses Delete 1. Pilh baris data yang akan dihapus. 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan,tekan tombol “Enter” untuk menyimpan data. Code : Public Class ModelForm Inherits YutakaBudgetSystem.TransForm Dim kueri, kueriinstd, Stdid, kueridelstd, kueridelstdtrans As String Dim cls As New clsRecordSet Dim dcc, dccstd As New DataControlClass Dim nows As Date Private Sub btnAddWC_Click(sender As System.Object, e As System.EventArgs) Handles btnAdd.Click
114 http://digilib.mercubuana.ac.id/
C1DataViewSet1.Views(0).AddNew() GridEX1.MoveLast() End Sub Private Sub BtnDelete_Click(sender As System.Object, e As System.EventArgs) Handles BtnDelete.Click Dim dccdel As New DataControlClass cls.OpenSQL("select standardid from standardusingheader where model = '" & GridEX1.GetValue("model") & "'", cls.SQLConn) If MsgBox("Apakah anda yakin akan menghapus data ini dan menghapus data pada standard using?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then kueridelstdtrans = "delete from standardusingtrans where standardid = '" & cls.Fields("standardid") & "'" dccstd.ExecuteNonQuery(kueridelstdtrans) kueridelstd = "delete from standardusingheader where model = '" & GridEX1.GetValue("Model") & "'" dccdel.ExecuteNonQuery(kueridelstd) GridEX1.CurrentRow.Delete() C1DataViewSet1.Update() End If End Sub
12. Budget Period
Gambar 4.33 Tampilan Form Budget Period Keterangan : Proses Input Data 1. Setelah Login pada Aplikasi YBS pilih menu navigasi “Administration”. 2. Pilih menu Budget Period. 3. Pada form Budget Period user hanya melakukan penyetingan tanggal dari list periode yang ada. 5. Setelah selesai melakukan pengisian data tekan tombol “Enter” maka sistem akan otomatis menyimpan data yang diisi. Proses Edit Dalam proses pengeditan data user dapat langsung melakukan pengeditan pada grid dan setelah selesai melakukan pengeditan,tekan tombol “Enter” untuk menyimpan data Code: Public Class BudgetPeriode Inherits YutakaBudgetSystem.TransForm
115 http://digilib.mercubuana.ac.id/
Dim kueri2, updates As String Dim dccAX As New DataControlClass Dim cls, cls2, cls3 As New clsRecordSet Dim tahunskr As Date Private Sub btnAdd_Click(sender As System.Object, e As System.EventArgs) Handles btnAdd.Click C1DataViewSet1.Views(0).AddNew() Dim NextSeq As String = CreateAutoNumber("BudgetPeriode") GridEX1.MoveLast() GridEX1.CurrentRow.Cells("Id").Value = NextSeq UpdateNumberSequence("BudgetPeriode", 1) GridEX1.RootTable.Columns("Type").EditType = EditType.TextBox End Sub Private Sub BudgetPeriode_AfterLoad(sender As Object, e As System.EventArgs) Handles Me.AfterLoad If UserId = "0701" Or UserId = "Admin" Then BindingNavigator1.Visible = True End If End Sub Private Sub BudgetPeriode_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = GridEX1 End Sub
13. Item List
Gambar 4.34 Tampilan Form Item List Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter” 2. Pilih menu Item List 3. Pada Form Item List akan ditampilkan data request item oleh user ataupun DIC data pada grid diatas dapat diupdate selalu oleh user atau DIC selama tempo request budget masih berlaku dan belum dilakukan “Approve” atau “Reject” oleh DIC yang bersangkutan. 4. Untuk menyimpan data request user pada grid request maka klik “Approve” dan akan tersimpan pada master item list sedangkan untuk menolak request dari user klik “Reject” dan user akan melihat status bahwa permintaan ditolak pada form request Item. 5. Untuk merubah harga item maka pilih Tab Menu “Item Dimension” dan akan muncul grid Dimension untuk item yang dipilih 116 http://digilib.mercubuana.ac.id/
Code : Imports System.Data.SqlClient Public Class ItemListForm Inherits YutakaBudgetSystem.TransForm Dim cls As New clsRecordSet Dim kueriin, kueriin2, kueristat1, kueristat2, UPDATEs, updatestdusing, updatebudgetrequest, updatebudgetrequestannual As String Dim dcc, dccAs, dccAs1 As New DataControlClass Dim clsAs, clsWC, clspr, clsvalue As New clsRecordSet Dim dccAx, dccAx1 As New DataControlClass Dim rdr, rdr1, rdr2, rdr3 As SqlClient.SqlDataReader Dim listwc, kueri, WHERE2 As String Dim loopwc As Integer Dim tahunskr As Integer Private Sub RefreshData() Dim NewRow As GridEXRow rdr = cls.GetReaderSQL("SELECT RequestItemId,ItemId,ItemName,Currency,Price,UserWC,DICWC,CreatedDate,CreatedBy,ModifiedDate,Mod ifiedBy " & _ "FROM RequestItem a WHERE a.DICWC in (SELECT WCDIC FROM User_DIC WHERE Nrp='" & UserId & "') and a.Status = 'Created' and userwc <> ''") gridRequest.ClearItems() Do While rdr.Read() NewRow = gridRequest.AddItem NewRow.BeginEdit() NewRow.Cells("RequestItemId").Value = rdr(0) NewRow.Cells("ItemId").Value = rdr(1) NewRow.Cells("ItemName").Value = rdr(2) NewRow.Cells("Currency").Value = rdr(3) NewRow.Cells("Price").Value = rdr(4) NewRow.Cells("UserWC").Value = rdr(5) NewRow.Cells("DICWC").Value = rdr(6) NewRow.Cells("CreatedDate").Value = rdr(7) NewRow.Cells("CreatedBy").Value = rdr(8) NewRow.Cells("ModifiedDate").Value = rdr(9) NewRow.Cells("ModifiedBy").Value = rdr(10) NewRow.EndEdit() Loop rdr.Close() End Sub
14. Mapping Category
Gambar 4.35 Tampilan Form Mapping Category 117 http://digilib.mercubuana.ac.id/
Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Mapping Category Item. 3. Pada form Mapping Category Item terdapat proses mapping item dengan Budget Class dan category,pada grid bagian atas akan ditampilkan item yang belum memiliki Budget Class dan category. 4. Tentukan Budgetclass dengan memilih pada dropdown list grid dan jenis Categori pada free text Category Item, pengetikan pada free text Categori Item ini juga memiliki fungsi pencarian untuk categori yang sudah di set dengan nama Categori yang dimaksudkan dan ditampilkan pada grid detail. 5. Setelah selesai klik tombol “Save” untuk menyimpan data. 6. Pada Grid Detail (Bawah) dapat dilakukan pengeditan pada Budget Class dan category. Code : Imports System.Data.SqlClient Public Class MappingCategoryItemForm Inherits YutakaBudgetSystem.TransForm Dim kueri, kuericat As String Dim dcc As New DataControlClass Dim rdr As SqlClient.SqlDataReader Dim cdata, cls As New clsRecordSet Dim categoryid As String Dim nows As Date Private Sub RefreshData() Dim cls As New clsRecordSet Dim dtb As New DataTable dtb = dcc.XDataTable("SELECT a.ItemId,a.ItemName,b.Currency,b.Price,BudgetClass1,BudgetClass2,BudgetClass3 FROM ItemList a LEFT JOIN Dimension b on a.ItemId = b.ItemId WHERE (a.DICWC in " & _ "(SELECT WCDIC FROM User_DIC WHERE Nrp='" & UserId & "') or DICWC is null) and ((BudgetClass1 = '' or BudgetClass1 is null) and (BudgetClass2 = '' or BudgetClass2 is null) " & _ "and (BudgetClass3 = '' or BudgetClass3 is null) and (ItemCategory='' or ItemCategory is null)) group by a.itemid,a.ItemName,Currency,price,BudgetClass1,BudgetClass2,BudgetClass3 ORDER by a.ItemId") gridLine.SetDataBinding(dtb, "") End Sub Private Sub MappingCategoryItemForm_AfterLoad(sender As Object, e As System.EventArgs) Handles Me.AfterLoad nows = Format(Now, "dd-MMM-yyyy") cls.OpenSQL("SELECT datestart,dateend FROM budgetperiode WHERE type = 'Setting Category Item'", cls.SQLConn) If nows < cls.Fields("datestart") Then ShowInfo("Setting Category Item Period has not been Opened,,Check the Setting Date..") Me.Close() ElseIf nows > cls.Fields("dateend") Then ShowInfo("Setting Category Item Item Period is Closed,,Check the Setting Date..") Me.Close() End If End Sub
118 http://digilib.mercubuana.ac.id/
15. Item Verification
Gambar 4.36 Tampilan Form Item Verification Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Item Verification. 3. Pada form Mapping Category Item untuk melakukan pengecekan antara Budget Class dengan item maka user dapat memilih Budget Class nya terlebih dahulu dan klik “Generate” dan pada grid table akan muncul item yang diinputkan oleh DIC Jika terdapat kesalahan Budget Class user PIC Budget dapat melakukan perubahan Budget Class pada kolom Budget Class Supposed dan untuk menginformasikan pada user perubahan yang terjadi DICetak dalam bentuk laporan perubahan nya dengan klik label “Print”. Code : Imports System.Data.SqlClient Public Class ItemVerificationForm Inherits YutakaBudgetSystem.TransForm Dim kueri, BC, del As String Dim dcc, dccAX As New DataControlClass Dim rdr As SqlDataReader Dim cls As New clsRecordSet Private Sub ItemVerificationForm_FormClosed(sender As Object, e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed End Sub Private Sub ItemVerificationForm_FormInit(sender As Object, e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = Grid End Sub Private Sub ItemVerificationForm_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load kueri = "DELETE FROM Verify" dcc.ExecuteNonQuery(kueri) kueri = "SELECT BudgetClass FROM BudgetClass" rdr = dcc.Reader(kueri) While rdr.Read() CmbBudgetClass.Items.Add(rdr(0)) End While
119 http://digilib.mercubuana.ac.id/
rdr.Close() CreateValueList4("BudgetClassSupposed", Grid, C1DataViewSet1, "SELECT BudgetClass as BudgetClassSupposed FROM BudgetClass") Me.C1DataViewSet1.Views("Verify").Definition = "Select * from Verify" End Sub
16. Sales
Gambar 4.37 Tampilan Form Sales Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Sales. 3. Pada form Monthly Sales input data menggunakan proses import data dari file Microsoft Excel Worksheet import data,untuk melakukan import data klik “Import” dan plih file yang akan diimport 4. Untuk view data yang sudah diimport user dapat mencari data berdasarkan parameter tahunnya dengan Enter text pada textfield year. 5. Data akan ditampilkan berdasarkan periode outlook sesuai setting budget period (Outlook II & Outlook III). Proses Edit Dalam proses pengeditan data user harus memilih terlebih dahulu data mana yang akan diubah pada grid detail dan user dapat Langsung mengubah data,setelah proses edit selesai tekan tombol “Enter” untuk menyimpan data. Code : Private Sub BtnImport_Click(sender As System.Object, e As System.EventArgs) Handles BtnImport.Click Dim MyConnection As System.Data.OleDb.OleDbConnection Dim DtSet As System.Data.DataSet Dim MyCommand As System.Data.OleDb.OleDbDataAdapter Dim fBrowse As New OpenFileDialog With fBrowse .Filter = "Excel files(*.xlsx)|*.xlsx|All files (*.*)|*.*" .FilterIndex = 1 .Title = "Import data from Excel file" End With
120 http://digilib.mercubuana.ac.id/
If fBrowse.ShowDialog() = Windows.Forms.DialogResult.OK Then Dim fname As String fname = fBrowse.FileName MyConnection = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source='" & fname & " '; " & "Extended Properties=Excel 8.0;") MyCommand = New System.Data.OleDb.OleDbDataAdapter("select * from [Sheet1$]", MyConnection) MyCommand.TableMappings.Add("Table", "Test") DtSet = New System.Data.DataSet MyCommand.Fill(DtSet) MyConnection.Close() cls.OpenSQL("SELECT DateStart,DateEnd,Type FROM BudgetPeriode WHERE Type = 'Outlook II'", cls.SQLConn) clspr.OpenSQL("SELECT DateStart,DateEnd FROM BudgetPeriode WHERE Type = 'Outlook III'", clspr.SQLConn) salah = 0 If cls.Fields("DateStart") < Now And Now < cls.Fields("DateEnd") Then For Each Drr As DataRow In DtSet.Tables(0).Rows clsmodel.OpenSQL("SELECT model from model where model = '" & Drr(4) & "'", clsmodel.SQLConn) clsproduct.OpenSQL("select productdesc from product where productdesc = '" & Drr(0) & "'", clsproduct.SQLConn) clsbudgetclass.OpenSQL("select budgetclass from budgetclass where budgetclass = '" & Drr(44) & "'", clsbudgetclass.SQLConn) If clsmodel.RecordCount = 0 Then ShowInfo(" Proses Import gagal. " & _ "Data Model : '" & Drr(4) & "' tidak sesuai dengan data master Model, Mohon Cek Kembali") salah += 1 ElseIf clsproduct.RecordCount = 0 Then ShowInfo(" Proses Import gagal. " & _ "Data Product : '" & Drr(0) & "' tidak sesuai dengan data master Product, Mohon Cek Kembali") salah += 1 ElseIf clsbudgetclass.RecordCount = 0 Then ShowInfo(" Proses Import gagal. " & _ "Data BudgetClass : '" & Drr(44) & "' tidak sesuai dengan data master BudgetClass, Mohon Cek Kembali") salah += 1 End If Next
17. Man Power Planning
Gambar 4.38 Tampilan Form Man Power Planning 121 http://digilib.mercubuana.ac.id/
Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Man Power Planning. 3. Pada form Man Power Planning untuk melakukan penambahan data Monthly MPP pilih terlebih dahulu tahun,user WC nya dan gol kemudian klik ”Generate” maka pada grid table akan dimunculkan data user pergolongan dan perbulannya. 4. Kemudian lakukan pengisian data MPP Quantity, Overtime Quantity, data akan otomatis tersimpan pada saat user selesai melakukan pengisian dan menekan tombol “Enter”. 5. Data ditampilkan berdasarkan periode outlook, jika periode berganti dari Outlook II ke Outlook III maka data Outlook II otomatis di grab menjadi data Outlook III tanpa menghapus data untuk periode Outlook II. Proses Delete 1. Pilih row data yang akan dihapus 2. klik tombol “Delete” dan Info Log akan muncul, jika data benar akan dihapus lanjutkan proses info log dan data terhapus. Proses Edit Dalam proses pengeditan data user harus memilih terlebih dahulu data mana yang akan diubah pada grid detail dan user dapat Langsung mengubah data dan setalah proses edit selesai tekan tombol “Enter” untuk menyimpan data. Code : Private Sub btnGenerate_Click(sender As System.Object, e As System.EventArgs) Handles btnGenerate.Click Dim dccin As New DataControlClass Dim dccAX As New DataControlClass Dim rdr As SqlDataReader Dim indexChecked As String Dim sb As New System.Text.StringBuilder cls2.OpenSQL("SELECT Year,UserWC,Gol FROM MPP", cls2.SQLConn) If CmbYear.Text = cls2.Fields("Year") And CmbUserWC.Text = cls2.Fields("UserWC") And CheckedListBox1.SelectedItem = cls2.Fields("Gol") Then ShowInfo("Data untuk Tahun tersebut sudah ada") Else For Each indexChecked In CheckedListBox1.CheckedItems cls.OpenSQL("SELECT DateStart,DateEnd,Type FROM BudgetPeriode WHERE Type = 'Outlook II'", cls.SQLConn) cls2.OpenSQL("SELECT DateStart,DateEnd FROM BudgetPeriode WHERE Type = 'Outlook III'", cls2.SQLConn) If cls.Fields("DateStart") < nows And nows < cls.Fields("DateEnd") Then rdr = cls.GetReaderSQL("SELECT MonthName FROM MappingMonth") Do While rdr.Read() kueriin = "INSERT INTO MPP(UserWC,UserWCDesc,MPPAllocation,CostAllocation,Gol,Month,Year,CreatedDate,CreatedBy,OutlookS tatus,GrabStatus,reviewstatus) " & _ "VALUES('" & CmbUserWC.Text & "','" & TxtWCDesc.Text & "','" & TxtMPPAlloc.Text & "'" & _ ",'" & TxtCostAlloc.Text & "','" & indexChecked & "','" & rdr(0) & "','" & CmbYear.Text & "','" & Now & "','" & UserId & "','Outlook II','0','0')" dccin.ExecuteNonQuery(kueriin) Loop
122 http://digilib.mercubuana.ac.id/
18. Employee Compensation & Labor Cost
Gambar 4.39 Tampilan Form Employee Compensation & Labor Cost Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Employee Compensation & labor Cost. 3. Pada form Employee Compensation & labor Cost input data menggunakan proses import data dari file Microsoft Excel Worksheet import data,untuk melakukan import data klik “Import” dan pilih file yang akan di import. 4. Untuk view data yang sudah diimport user dapat mencari data berdasarkan parameter tahunnya dengan Enter text pada textfield year. Proses Delete 1. Pilih row data yang akan dihapus. 2. klik tombol “Delete” dan Info Log akan muncul, jika data benar akan dihapus lanjutkan proses info log dan data terhapus. Proses Edit Dalam proses pengeditan data user harus memilih terlebih dahulu data mana yang akan diubah pada grid detail dan user dapat Langsung mengubah data,setelah proses edit selesai tekan tombol “Enter” untuk menyimpan data. Code : Private Sub BtnImport_Click(sender As System.Object, e As System.EventArgs) Handles BtnImport.Click ' DialogImportEmplComp.Show() Dim MyConnection As System.Data.OleDb.OleDbConnection Dim DtSet As System.Data.DataSet Dim MyCommand As System.Data.OleDb.OleDbDataAdapter Dim fBrowse As New OpenFileDialog With fBrowse
123 http://digilib.mercubuana.ac.id/
.Filter = "Excel files(*.xlsx)|*.xlsx|All files (*.*)|*.*" .FilterIndex = 1 .Title = "Import data from Excel file" End With If fBrowse.ShowDialog() = Windows.Forms.DialogResult.OK Then Dim fname As String fname = fBrowse.FileName MyConnection = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source='" & fname & " '; " & "Extended Properties=Excel 8.0;") MyCommand = New System.Data.OleDb.OleDbDataAdapter("select * from [Sheet1$]", MyConnection) MyCommand.TableMappings.Add("Table", "Test") DtSet = New System.Data.DataSet MyCommand.Fill(DtSet) MyConnection.Close() cls.OpenSQL("SELECT DateStart,DateEnd,Type FROM BudgetPeriode WHERE Type = 'Outlook II'", cls.SQLConn) clspr.OpenSQL("SELECT DateStart,DateEnd FROM BudgetPeriode WHERE Type = 'Outlook III'", clspr.SQLConn) salah = 0
19. Other Income
Gambar 4.40 Tampilan Form Other Income Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Other Income. 3. Pada form Other Income untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru pada grid headernya. 4. Kemudian lanjutkan dengan pengisian data Type dan Year pada grid header, sedangkan Created Date,Created By,Modified Date,Modified By otomatis oleh sistem. 5. Untuk pengisian pada grid line klik tombol “Generate” dan product akan otomatis terisi,kemudian lanjutkan dengan pengisian data perbulannya. 6. Setelah data pada grid line sudah selesai diisi maka untuk menyimpan data tekan tombol “Enter” dan data akan tersimpan. 124 http://digilib.mercubuana.ac.id/
7. Data ditampilkan berdasarkan periode Outlook budget dan data Outlook II akan otomatis menjadi data Outlook III pada saat memasuki periode Outlook III. Proses Delete 1. Pilh baris data yang akan dihapus pada grid header 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus, jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung mengubah data pada grid header dan grid line, setelah proses edit selesai,tekan tombol “Enter” untuk menyimpan data. Code : Private Sub OtherIncomeForm_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load tahunskr = CInt(Format(Now, "yyyy")) + 1 CreateValueList4("IncomeType", gridHeader, dataMain, "SELECT a.BudgetClassDesc as IncomeType FROM BudgetClass a INNER JOIN ReportTrans b " & _ "on a.BudgetClass = b.BudgetClass INNER JOIN ReportHeader c on b.ReportId = " & _ "c.ReportId WHERE FormDesc = 'NOPEX' and ReportCategoryDesc LIKE '%income%'") CreateValueList4("Year", gridHeader, dataMain, "SELECT year FROM Year where year >= " & tahunskr & "") CreateValueList4("AnnualIncomeType", gridHeaderAnnual, dataMain, "SELECT a.BudgetClassDesc as AnnualIncomeType FROM BudgetClass a INNER JOIN ReportTrans b " & _ "on a.BudgetClass = b.BudgetClass INNER JOIN ReportHeader c on b.ReportId = " & _ "c.ReportId WHERE FormDesc = 'NOPEX' and ReportCategoryDesc LIKE '%income%'") CreateValueList4("Year", gridHeaderAnnual, dataMain, "SELECT year FROM Year where year > " & tahunskr & "") nows = Format(Now, "dd-MMM-yyyy") clsvalue.OpenSQL("SELECT DateStart,DateEnd FROM BudgetPeriode WHERE Type = 'Outlook III'", cls.SQLConn) clspr.OpenSQL("select * from OtherIncomeHeader where Outlookstatus = 'Outlook II' and Year = " & tahunskr & " and GrabStatus = '0'", clspr.SQLConn) clsannual.OpenSQL("SELECT * FROM AnnualOtherIncomeHeader WHERE OutlookStatus = 'Outlook II' and (Year = " & tahunskr + 1 & " or Year = " & tahunskr + 2 & " or Year " & _ "= " & tahunskr + 3 & ") and GrabStatus = '0'", clsannual.SQLConn) If clspr.RecordCount > 0 Then If Now >= clsvalue.Fields("DateStart") And Now <= clsvalue.Fields("DateEnd") Then 'while data Outlook2 While Not clspr.EOF 'cek data Outlook 3 kueri = "select * from OtherIncomeHeader where Outlookstatus = 'Outlook III' and Year = " & tahunskr & " and IncomeType = '" & clspr.Fields("IncomeType") & "'" cls.OpenSQL(kueri, cls.SQLConn) 'kalo sudah ada lewatkan, kalo belum ada insert If cls.RecordCount = 0 Then Dim NextSeq1 As String = CreateAutoNumber("OtherIncomeForm") id = "OI" + NextSeq1 UpdateNumberSequence("OtherIncomeForm", 1) kueri2 = "INSERT INTO OtherIncomeHeader (OtherIncomeId,IncomeType,Year,CreatedDate,CreatedBy,OutlookStatus,GrabStatus) " & _ "values('" & id & "','" & clspr.Fields("IncomeType") & "','" & clspr.Fields("Year") & "','" & Now & "','" & UserId & "','Outlook III','2')" dcc1.ExecuteNonQuery(kueri2) rdr = cls1.GetReaderSQL("select * from OtherIncomeTrans where OtherIncomeId = '" & clspr.Fields("OtherIncomeId") & "'")
125 http://digilib.mercubuana.ac.id/
20. Other Expense
Gambar 4.41 Tampilan Form Other Expense Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Other Expense. 3. Pada form Other Expense untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru pada grid headernya. 4. Kemudian lanjutkan dengan pengisian data Type dan Year pada grid header, sedangkan Created Date,Created By,Modified Date,Modified By otomatis oleh sistem. 5. Untuk pengisian pada grid line klik tombol “Generate” dan product akan otomatis terisi,kemudian lanjutkan dengan pengisian data perbulannya. 5. Setelah data pada grid line sudah selesai diisi maka untuk menyimpan data tekan tombol “Enter” dan data akan tersimpan. 6. Data ditampilkan berdasarkan periode Outlook budget dan data Outlook II akan otomatis menjadi data Outlook III pada saat memasuki periode Outlook III. Proses Delete 1. Pilh baris data yang akan dihapus pada grid header 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus,jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung mengubah data pada grid header dan grid line, setelah proses edit selesai tekan tombol “Enter” untuk menyimpan data. Code: Private Sub OtherExpenseForm_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load tahunskr = CInt(Format(Now, "yyyy")) + 1
126 http://digilib.mercubuana.ac.id/
CreateValueList4("ExpenseType", gridHeader, dataMain, "SELECT a.BudgetClassDesc as ExpenseType FROM BudgetClass a INNER JOIN ReportTrans b " & _ "on a.BudgetClass = b.BudgetClass INNER JOIN ReportHeader c on b.ReportId = c.ReportId " & _ "WHERE FormDesc = 'NOPEX' and ReportCategoryDesc LIKE '%expense%'") CreateValueList4("Year", gridHeader, dataMain, "SELECT year FROM Year where year >= " & tahunskr & "") CreateValueList4("AnnualExpenseType", gridHeaderAnnual, dataMain, "SELECT a.BudgetClassDesc as AnnualExpenseType FROM BudgetClass a INNER JOIN ReportTrans b " & _ "on a.BudgetClass = b.BudgetClass INNER JOIN ReportHeader c on b.ReportId = c.ReportId " & _ "WHERE FormDesc = 'NOPEX' and ReportCategoryDesc LIKE '%expense%'") CreateValueList4("Year", gridHeaderAnnual, dataMain, "SELECT year FROM Year where year > " & tahunskr & "") nows = Format(Now, "dd-MMM-yyyy") clsvalue.OpenSQL("SELECT DateStart,DateEnd FROM BudgetPeriode WHERE Type = 'Outlook III'", cls.SQLConn) clspr.OpenSQL("select * from OtherExpenseHeader where Outlookstatus = 'Outlook II' and Year = " & tahunskr & " and GrabStatus = '0'", clspr.SQLConn) clsannual.OpenSQL("SELECT * FROM AnnualOtherExpenseHeader WHERE OutlookStatus = 'Outlook II' and (Year = " & tahunskr + 1 & " or Year = " & tahunskr + 2 & " or Year " & _ "= " & tahunskr + 3 & ") and GrabStatus = '0'", clsannual.SQLConn)
21. Depreciation
Gambar 4.42 Tampilan Form Depreciation Keterangan : Proses Check Depreciation 1. Pada main form Aplikasi YBS pilih menu navigasi “Setting Parameter”. 2. Pilih menu Depreciation – Depreciation New Asset. 3. Untuk menghitung nilai depresiasi dari tiap asset user harus memilih tahun item yang akan di depresiasi,kemudian klik tombol “Depreciation New Asset”
nilai penyusutan dan bulan,tahun
habisnya nilai untuk asset yang sudah ada dapat dihitung untuk perbulannya dan Budget Class untuk asset tersebut berubah menjadi Budget Class depreciation nya yang sesuai dengan mapping Budget Class asset to Budget Class Description.
127 http://digilib.mercubuana.ac.id/
4. User dapat melakukan edit pada kolom usedmonth, dan otomatis akan berpengaruh pada data usedmonth di request budget dan juga mengubah retired month. Code: Private Sub btnGenerate_Click(sender As System.Object, e As System.EventArgs) Handles btnGenerate.Click Dim dccIn As New DataControlClass Dim dccStat1 As New DataControlClass Dim dtb1 As DataTable tahunskr = CInt(Format(Now, "yyyy")) + 1 year = CInt(Format(Now, "yyyy")) + 1 'month = CInt(Format(Now, "M")) + 1 Dim NextSeq As String = CreateAutoNumber("DepreciationForm") If CmbYear.Text = "" Or CmbYear.Text = "Select..." Then ShowInfo("Pilih Tahun") Else UpdateNumberSequence("DepreciationForm", 1) cls.OpenSQL("select Year from Depreciation where BudgetClassAsset is not null ", cls.SQLConn) cls2.OpenSQL("SELECT Year FROM ReqDeptBudgetMonthly where BudgetClass in (select BudgetClass from BudgetClass where FormDesc = 'investment')", cls2.SQLConn) If CmbYear.Text = cls2.Fields("Year") Then If CmbYear.Text = cls.Fields("Year") Then ShowInfo("Data untuk Tahun tersebut sudah ada") RefreshData() Else rdr = cls.GetReaderSQL("select *,year(RetiredMonth) from (SELECT ReqMonthlyId,a.BudgetClass,b.BudgetClassDepreciation,a.ItemName as AssetName,e.Currency,(Price * (Jan+Feb+mar+apr+mei+jun+jul+aug+sep+oct+nov+Dec)) as " & _ "OriginalAmount,UsedMonth,AssetAge, Shift,DATEADD(MONTH,(AssetAge/shift),UsedMonth) as RetiredMonth,((AmountJan+AmountFeb+AmountMar+AmountApr+AmountMei+AmountJun+AmountJul+AmountAug+A mountSep+AmountOct+AmountNov+AmountDec) " & _ "/(Assetage/shift)) as DepreciationPerMonth,BudgetClassDepreciationDesc,UserWC FROM (SELECT a.*,b. CostAllocationDesc," & _ "IIF(b.CostAllocationDesc = 'opex' , 'OPEX', 'COGS') as Tipe FROM ReqDeptBudgetMonthly a INNER JOIN WorkCenter2 b on a.UserWC = " & _ "b.WC) as a INNER JOIN DepreciationMapping b on a.BudgetClass = b.BudgetClassAsset and a.Tipe = b.Type INNER JOIN ItemList c " & _ "on a.BudgetClass = c.BudgetClass1 or a.BudgetClass = c.BudgetClass2 or a.BudgetClass = c.BudgetClass3 and a.ItemId = c.ItemId " & _ "INNER JOIN AssetCategory d on a.BudgetClass = d.BudgetClassAsset INNER JOIN Dimension e on a.ItemId = e.ItemId WHERE " & _ "a.Year = " & CmbYear.Text & " GROUP BY a.ReqMonthlyId,a.BudgetClass,b.BudgetClassDepreciation,a.ItemName,e.Currency,e.price,jan,feb,mar ,apr,mei,jun,jul,aug,sep,oct,nov,Dec," & _ "a.UsedMonth,d.AssetAge,d.Shift,b.BudgetClassDepreciationDesc,UserWC,AmountJan,AmountFeb,AmountM ar,AmountApr,AmountMei,AmountJun,AmountJul,AmountAug,AmountSep,AmountOct,AmountNov,AmountDec) as Tabel") Do While rdr.Read() If rdr(13) < year Then kueriin = "INSERT INTO Depreciation (ReqMonthlyId,BudgetClassAsset,BudgetClassDepreciation,AssetName,Currency," & _ "OriginalAmount,UsedMonth,AssetAge,Shift,RetiredMonth,DepreciationPerMonth,RecId,BudgetClassDesc ription,CreatedDate,CreatedBy,Year,UserWC)" & _ " VALUES('" & rdr(0) & "','" & rdr(1) & "','" & rdr(2) & "','" & rdr(3) & "','" & rdr(4) & "'" & _ ",'" & rdr(5) & "','" & rdr(6) & "','" & rdr(7) & "','" & rdr(8) & "','" & rdr(9) & "','0','" & NextSeq & "','" & rdr(11) & "','" & Now & "','" & UserId & "','" & tahunskr & "','" & rdr(12) & "')" dccIn.ExecuteNonQuery(kueriin)
128 http://digilib.mercubuana.ac.id/
22. Request Item
Gambar 4.43 Tampilan Form Request Item Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Request Item. 3. Form Request Item merupakan form request untuk DIC dan juga user. Pada form Request Item untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru pada grid, 4. Kemudian lanjutkan dengan pengisian data Item Name,Currency,Original Price ,DIC,dan User WC. Jika data sudah diisi dan user menekan tombol “Enter” maka data akan otomatis tersimpan. 5. Pada kolom status akan otomatis terisi by system,jika data permintaan sudah diajukan dan belum di check oleh DIC yang dituju maka status yang di setting oleh sistem adalah “Created”,”approve” untuk permintaan diterima dan “reject” untuk permintaan ditolak. 6. Pada Grid Line yang ada di bawah berfungsi untuk menampilkan item yang sudah ada di itemlist,untuk menjadi pedoman request item baru untuk user. Proses Delete 1. Pilih baris data yang akan dihapus pada grid. 2. Kemudian klik tombol delete dan akan muncul info log untuk memastikan data yang akan dihapus,jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Code: Private Sub RequestItemForm_AfterLoad(sender As Object, e As System.EventArgs) Handles Me.AfterLoad nows = Format(Now, "dd-MMM-yyyy") cls.OpenSQL("SELECT datestart,dateend FROM budgetperiode WHERE type = 'Request Item from User to DIC'", cls.SQLConn) If nows < cls.Fields("datestart") Then
129 http://digilib.mercubuana.ac.id/
ShowInfo("Periode Request Item belum dibuka,,Periksa Pengaturan Periode Budget..") Me.Close() ElseIf nows > cls.Fields("dateend") Then ShowInfo("Periode Request Item sudah berakhir,,Periksa Pengaturan Periode Budget..") Me.Close() End If End Sub Private Sub RequestItemForm_FormInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.FormInit Me.trxDataViewSet = C1DataViewSet1 Me.trxDataGrid = GridEX1 End Sub Private Sub RequestItemForm_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load AddConditionalFormatting() tahunskr = CInt(Format(Now, "yyyy")) CreateValueList("Currency", GridEX1, C1DataViewSet1, True)
23. Exception Form
Gambar 4.44 Tampilan Form Exception Form Keterangan
:
Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Exception Form. 3. Pada form Exception Form untuk melakukan penambahan data, klik tombol “New” dan akan muncul baris baru pada grid headernya. 4. Kemudian lanjutkan dengan pengisian data Budget Class dan Year pada grid header, sedangkan Created Date,Created By,Modified Date,Modified By otomatis oleh system. 5. Untuk pengisian pada grid line klik tombol “Generate” dan product akan otomatis terisi,kemudian lanjutkan dengan pengisian data perbulannya. 6. Setelah data pada grid line sudah selesai diisi maka untuk menyimpan data tekan tombol “Enter” dan data akan tersimpan. 7. Data ditampilkan berdasarkan periode Outlook budget dan data Outlook II akan otomatis menjadi data Outlook III pada saat memasuki periode Outlook III. 130 http://digilib.mercubuana.ac.id/
Proses Delete 1. Pilh baris data yang akan dihapus pada grid header. 2. Kemudian klik tombol delete dan akan muncul command untuk memastikan data yang akan dihapus,jika data benar data akan dihapus lanjutkan aksi pada command tersebut dan data telah dihapus. Proses Edit Dalam proses pengeditan data user dapat langsung mengubah data pada grid header dan grid line, setelah proses edit selesai,tekan tombol “Enter” untuk menyimpan data. 24. Monthly Budget Request
Gambar 4.45 Tampilan Form Monthly Budget Request Keterangan
:
Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Budget Request – Monthly Budget Request. 3. Pada form Monthly Budget Request untuk melakukan penambahan data, klik tombol “New” maka akan muncul row baru untuk penambahan data baru. 4. Kemudian lakukan pengisian data Activity Plan, Item ID, DIC,User,Status,Opening CLMonth,Act Desc,Used Month,Item Name,Quantity,Jan sampai Dec
data otomatis tersimpan pada saat user
menekan tombol “Enter”. Proses Delete 1. Pilih row data yang akan dihapus 2. klik tombol “Delete” dan Info Log akan muncul, jika data benar akan dihapus lanjutkan proses info log dan data terhapus. Code : 131 http://digilib.mercubuana.ac.id/
Private Sub RefreshData() kueri = "SELECT WCDIC FROM User_DIC WHERE Nrp='" & UserId & "'" clsWC.OpenSQL(kueri, clsWC.SQLConn) listwc = "" loopwc = 0 While Not clsWC.EOF If loopwc = 0 Then listwc = listwc & " UserWC = '" & clsWC.Fields("WCDIC") & "' " Else listwc = listwc & " or UserWC = '" & clsWC.Fields("WCDIC") & "' and year = " & tahunskr & "" End If loopwc += 1 clsWC.MoveNext() End While where = " year = " & tahunskr & "" Me.C1DataViewSet1.Views("ReqDeptBudgetMonthly").Definition = "SELECT * FROM ReqDeptBudgetMonthly WHERE " & listwc Try Dim fc1, fc2 As GridEXFormatCondition fc1 = New GridEXFormatCondition(GridEX1.RootTable.Columns("reviewstatus"), ConditionOperator.Contains, "2") fc1.FormatStyle.ForeColor = Color.Red fc1.FormatStyle.BackColor = Color.White GridEX1.RootTable.FormatConditions.Add(fc1) fc2 = New GridEXFormatCondition(GridEX1.RootTable.Columns("reviewstatus"), ConditionOperator.Contains, "1") fc2.FormatStyle.ForeColor = Color.Red fc2.FormatStyle.BackColor = Color.White GridEX1.RootTable.FormatConditions.Add(fc2) Catch ex As Exception End Try End Sub
25. Annual Budget request
Gambar 4.46 Tampilan Form Annual Budget Request Keterangan : Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Budget Request - Annual Budget Request.
132 http://digilib.mercubuana.ac.id/
3. Pada form Annual Budget Request user langsung memilih item pada drop down list DIC sesuai dengan data pada request bulanan yang telah diajukan. 4. Kemudian pada grid tabel akan ditampilkan item yang juga diajukan oleh user pada request bulanan,dan lanjutkan dengan mengisi quantity dan amount pada 3 tahun berikutnya, data yang diisi akan tersimpan by system pada saat user selesai melakukan pengisian pada satu row dan tekan tombol “Enter”. 5. Jika pada requset tahunan ada item yang akan ditambahkan selain item pada request bulanan klik tombol “New” dan akan muncul row baru. 6. Begitu juga jika ada data yang akan dikurangi untuk tahun berikutnya user dapat memilih row data yang akan dihapus dan klik tombol “Delete”. Code : Private Sub RefreshData() kueri = "SELECT WCDIC FROM User_DIC WHERE Nrp='" & UserId & "'" clsWC.OpenSQL(kueri, clsWC.SQLConn) listwc = "" loopwc = 0 While Not clsWC.EOF If loopwc = 0 Then listwc = listwc & " UserWC = '" & clsWC.Fields("WCDIC") & "' " Else listwc = listwc & " OR UserWC = '" & clsWC.Fields("WCDIC") & "' " End If loopwc += 1 clsWC.MoveNext() End While WHEREtahun = " and (year = " & CInt(tahunskr) + 1 & " OR year = " & CInt(tahunskr) + 2 & " OR year = " & CInt(tahunskr) + 3 & " ) and DICWC = '" & CmbDIC.Text & "' " Me.C1DataViewSet1.Views("ReqDeptBudgetAnnual").Definition = "SELECT * FROM ReqDeptBudgetAnnual WHERE (" & listwc & ")" & WHEREtahun Try Dim fc1 As GridEXFormatCondition fc1 = New GridEXFormatCondition(GridEX1.RootTable.Columns("reviewstatus"), ConditionOperator.Contains, "2") fc1.FormatStyle.ForeColor = Color.Red fc1.FormatStyle.BackColor = Color.White GridEX1.RootTable.FormatConditions.Add(fc1) Dim fc2 As GridEXFormatCondition fc2 = New GridEXFormatCondition(GridEX1.RootTable.Columns("reviewstatus"), ConditionOperator.Contains, "1") fc2.FormatStyle.ForeColor = Color.Red fc2.FormatStyle.BackColor = Color.White GridEX1.RootTable.FormatConditions.Add(fc2) Catch ex As Exception End Try End Sub Private Sub AnnualBudgetRequestForm_AfterLoad(sender As Object, e As System.EventArgs) Handles Me.AfterLoad Dim rdr As SqlDataReader nows = Format(Now, "dd-MMM-yyyy") cls.OpenSQL("SELECT datestart,dateend FROM budgetperiode WHERE type = 'Request Budget from User to DIC'", cls.SQLConn) If nows < cls.Fields("datestart") Then ShowInfo("Periode Request Bydget belum dibuka,,Periksa Pengaturan Periode Budget..") Me.Close() ElseIf nows > cls.Fields("dateend") Then ShowInfo("Periode Request Budget sudah berakhir,,Periksa Pengaturan Periode Budget..") Me.Close()
133 http://digilib.mercubuana.ac.id/
End If
26. Master Request Budget
Gambar 4.47 Tampilan Form Master Request Budget Keterangan
:
Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Master Request Budget. 3. Pada form Master Request budget ini akan diakses oleh PIC Budget dan DIC. 4. Untuk melakukan pemeriksaan daftar request budget per Budget Classnya pertama user memilih DIC,Budget Class, year,dan Status yang akan di check. 5. Daftar Budget request akan ditampilkan pada grid table dan DIC dapat secara langsung mengedit data permintaan pada kolom month,OpenCLMonth,usedmonth, dan Quantity,setelah proses edit selesai tekan tombol “Enter” untuk menyimpan data. 6. DIC juga dapat menghapus data request jika diperlukan dengan memilih row data dan klik tombol “Delete” dan akan muncul info log,jika benar data akan dihapus maka lanjutkan proses dan data telah dihapus. 7. Untuk menyimpan data pada daftar item klik “submit”. Code: Private Sub RefreshData() Dim dtb As DataTable Dim dccAX As New DataControlClass dtb = dccAX.XDataTable("select a.ReqMonthlyId,a.ItemId,a.ItemName,c.Currency,c.Price,a.Dimension,jan,feb,mar,apr,mei,jun,jul,au g,sep,oct,nov,dec," & _ "a.OpeningCLMonth, UsedMonth, a.UserWC,amountjan,amountfeb,amountmar,amountapr,amountmei,amountjun,amountjul,amountaug,amounts
134 http://digilib.mercubuana.ac.id/
ep,amountoct,amountnov,amountdec,reviewstatus from ReqDeptBudgetMonthly a inner join ItemList b on a.ItemId = b.ItemId inner join Dimension c on b.ItemId = " & _ "c.ItemId where a.DICWC = '" & CmbDIC.Text & "' and a.BudgetClass= '" & CmbBudgetClass.Text & "' and a.year = " & CmbYear.Text & " and a.OutlookStatus = '" & CmbOutlook.Text & "' and (reviewstatus = 2 or reviewstatus = 1) group by a.ReqMonthlyId,a.ItemId," & _ "a.ItemName,c.Currency,c.Price,a.Dimension,a.OpeningCLMonth,UsedMonth,a.UserWC,jan,feb,mar,apr,m ei,jun,jul,aug,sep,oct,nov,dec,amountjan,amountfeb,amountmar,amountapr,amountmei,amountjun,amoun tjul,amountaug,amountsep,amountoct,amountnov,amountdec,reviewstatus") gridMaster.SetDataBinding(dtb, "") gridMaster.CheckAllRecords() Try Dim fc1 As GridEXFormatCondition fc1 = New GridEXFormatCondition(gridMaster.RootTable.Columns("reviewstatus"), ConditionOperator.Contains, "1") fc1.FormatStyle.ForeColor = Color.Red fc1.FormatStyle.BackColor = Color.White gridMaster.RootTable.FormatConditions.Add(fc1) Catch ex As Exception End Try End Sub
27. Report
Gambar 4.48 Tampilan Dialog Report Keterangan
:
Proses Input Data 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Report. 3. Pada form Report user memilih Part of Report yang akan di Generate dan cetak dengan klik tombol “Print”. Code : Private Sub bntPrint_Click(sender As System.Object, e As System.EventArgs) Handles bntPrint.Click If CmbReportBef.Text = "Budget All Department" Then Try Dim rpt As New ReportViewer urlreport = My.Settings.PathReportApplication.ToString & "BudgetAllDepartment.rdlc" kuerireport = "select *,(jan+feb+mar+apr+mei+jun+jul+aug+sep+oct+nov+dec) as totalquantity,(Amountjan+Amountfeb+Amountmar+Amountapr+Amountmei+Amountjun+Amountjul+Amountaug+A
135 http://digilib.mercubuana.ac.id/
mountsep+Amountoct+Amountnov+Amountdec) totalamount from reqdeptbudgetmonthly a inner join dimension b on " & _ "a.itemid = b.itemid and a.dimension = b.dimensionname where Year = '" & cmbTahunBef.Text & "' and reviewstatus = '1'" ReportViewer.MdiParent = MainForm ReportViewer.Show() Catch ex As Exception Finally Me.Cursor = Cursors.Default End Try Me.Close()
28. Setting Ratio & Manual Justification
Gambar 4.49 Tampilan Form Setting Ratio & Manual Justification Keterangan : Proses Simulation 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Simulation Budget - Setting Ratio & Manual Justification. 3. Pilih part report yang akan di simulasikan pada drop down list part report dan year dan klik tombol “Generate” dan untuk Simulation ID akan otomatis terisi sesuai dengan number sequence untuk simulationnya. 4. Pada grid akan ditampilkan data part report, report category dan Budget Class sesuai dengan pilihan part report. 5. Pada proses Setting Ratio & Manual Justification terdapat pilihan setting pada part report,category,dan Budget Classnya secara langsung melakukan edit pada salah satu grid,Setting Ratio & Manual Justification dapat menambah dan mengurangi amount before. 6. Untuk proses setting ratio dan manual justification akan langsung mengubah amount after simulation dan Profit Before Tax dan Profit to Sales. 7. Jika proses simulasi untuk satu part report selesai maka klik tombol “Save” untuk melakukan penyimpanan data.
136 http://digilib.mercubuana.ac.id/
Code : Private Sub BtnGenerate_Click(sender As System.Object, e As System.EventArgs) Handles BtnGenerate.Click Dim rdr, rdr1, rdr2 As SqlDataReader Dim dccinTransdep As New DataControlClass If CmbPartReport.Text = "" Or CmbYear.Text = "" Then ShowInfo("Part Report atau Tahun tidak boleh kosong") Exit Sub Else cls.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%Sales%' GROUP BY ReportDesc", cls.SQLConn) cls1.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%depreciation%' GROUP BY ReportDesc", cls.SQLConn) cls2.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%nopex%' GROUP BY ReportDesc", cls.SQLConn) cls3.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%OFFICE COMPENSATION%' GROUP BY ReportDesc", cls.SQLConn) cls4.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%LABOR COST%' GROUP BY ReportDesc", cls.SQLConn) cls5.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%General Administrative%' GROUP BY ReportDesc", cls.SQLConn) cls6.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%material%' GROUP BY ReportDesc", cls.SQLConn) cls7.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%equipment cost%' GROUP BY ReportDesc", cls.SQLConn) cls8.OpenSQL("SELECT ReportDesc FROM ReportHeader WHERE ReportDesc LIKE '%operation cost%' GROUP BY ReportDesc", cls.SQLConn) If CmbYear.Text = tahunskr Then BtnSave.Enabled = True If CmbPartReport.Text = cls.Fields("ReportDesc") Then TxtSimID.Text = "SIM" + CreateAutoNumber("SettingRatioManualJustificationForm") UpdateNumberSequence("SettingRatioManualJustificationForm", 1) rdr = cls.GetReaderSQL("SELECT SUM(TotAmount) FROM Sales WHERE year = " & CmbYear.Text & " and Outlook = 'Outlook III'")
29. History Simulation
Gambar 4.50 Tampilan Form History Simulation Keterangan : 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Simulation Budget - Setting Ratio & Manual Justification. Pada form ini user melakukan pemilihan Year untuk melihat tahun simulasi report dan sistem akan 137 http://digilib.mercubuana.ac.id/
menampilkan history simulation yang sudah dilakukan pada grid header, jika user memilih salah satu row pada grid header,maka grid line nya akan menampilkan detail simulation per categori dan Budget Class nya. Code : Private Sub RefreshData() Dim dtb, dtb1 As DataTable Dim dccAx As New DataControlClass dtb = dccAx.XDataTable("SELECT a.*,year FROM HistorySimulationTrans1 a INNER JOIN HistorySimulationHeader b " & _ "on a.SimulationId = b.SimulationId WHERE a.SimulationId = '" & gridsim1.GetValue("SimulationId") & "'") gridsim2.SetDataBinding(dtb, "") dtb1 = dccAx.XDataTable("SELECT a.*,year FROM HistorySimulationTrans2 a INNER JOIN HistorySimulationHeader b " & _ "on a.SimulationId = b.SimulationId WHERE a.SimulationId = '" & gridsim1.GetValue("SimulationId") & "'") gridsim3.SetDataBinding(dtb1, "") End Sub Private Sub HistorySimulationForm_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load Dim dccAx, dcc As New DataControlClass tahunskr = CInt(Format(Now, "yyyy")) + 1 kueri = "SELECT Year FROM Year where year >= " & tahunskr & "" cls2.OpenSQL(kueri, cls2.SQLConn) rdr2 = dcc.Reader(kueri) While rdr2.Read() CmbYear.Items.Add(rdr2(0)) End While rdr2.Close() gridsim1.SetDataBinding(dtb, "") gridsim2.SetDataBinding(dtb, "") gridsim3.SetDataBinding(dtb, "") End Sub
30. Compilation for PBT
Gambar 4.51 Tampilan Form Compilation for PBT Keterangan : 1. Pada main form Aplikasi YBS pilih menu navigasi “Budget”. 138 http://digilib.mercubuana.ac.id/
2. Pilih menu Compilation for PBT. 3. Pilih tahun yang menjadi parameter pemilihan part report dan pada grid akan langsung dimunculkan part report yang ada. 4.Lanjutkan dengan pemilihan Simulation Id mana yang akan digunakan dalam proses check PBT. 5. Jika semua part report sudah dipilih klik “Generate” dan pada grid PBT dan Percentage PBT to Sales akan dilihatkan jumlah dan persentasenya. 6. Untuk menyimpan hasil review klik “Save” dan data tersimpan. Code : Private Sub CmbYear_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles CmbYear.SelectedIndexChanged Dim rdrr As SqlClient.SqlDataReader Dim dccAx As New DataControlClass Dim ExSp As New ExecSPClass cls.OpenSQL("SELECT Year FROM CompPartofReport", cls.SQLConn) If cls.Fields("Year") = CmbYear.Text Then ShowInfo("Data Sudah ada...") dtb = dccAx.XDataTable("SELECT * FROM CompPartofReport WHERE Year = " & CmbYear.Text & "") gridHeader.SetDataBinding(dtb, "") gridHeader.CheckAllRecords() btnGenerate.Enabled = True Else If MsgBox("Apakah anda yakin akan menambahkan data untuk tahun " & CmbYear.Text & " ?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then CompId = "Comp" + CreateAutoNumber("CompilationforPBT") UpdateNumberSequence("CompilationforPBT", 1) TxtSimId.Text = CompId rdrr = cls2.GetReaderSQL("SELECT ReportDesc,ROW_NUMBER() over (order by a.Reportdesc) as b FROM (SELECT ReportDesc FROM ReportHeader where " & _ "ReportDesc not like 'investment' and ReportDesc not like 'prepaid' GROUP BY ReportDesc) as a") Do While rdrr.Read() kueri = "INSERT INTO CompPartofReport(CompId,PartReport,Year,Sort,AmountAfter) " & _ "values('" & CompId & "','" & rdrr(0) & "'," & CmbYear.Text & ",'" & rdrr(1) & "',00)" dcc.ExecuteNonQuery(kueri) Loop rdrr.Close() dtb = dccAx.XDataTable("SELECT * FROM CompPartofReport WHERE Year = " & CmbYear.Text & "") gridHeader.SetDataBinding(dtb, "") gridHeader.CheckAllRecords() btnGenerate.Enabled = True End If End If TxtSimId.Text = IIf(IsDBNull(gridHeader.GetValue("CompId")), "", (gridHeader.GetValue("CompId"))) cls2.OpenSQL("select pbt,PBTtoSales from CompPBT where CompId = '" & gridHeader.GetValue("CompId") & "'", cls.SQLConn) TxtPbt.Text = FormatNumber(cls2.Fields("PBT"), 2, Microsoft.VisualBasic.TriState.True) TextBox1.Text = FormatNumber(cls2.Fields("PBTtoSales"), 2, Microsoft.VisualBasic.TriState.True) End Sub
139 http://digilib.mercubuana.ac.id/
31. Proportional to Detail
Gambar 4.52 Tampilan Form Proportional to Detail Keterangan:
:
Proportional Based on Unit Production 1.Pada Main Form aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Setting Amount – Proportional to Detail. 3. Pada form Proportional to Detail untuk melakukan proses proportional baru klik tombol “New” dan lanjutkan dengan pemilihan hasil Simulasion yang akan diproportional kan. 4. Untuk proses proporsional, user harus memilih simulation id yang akan di proses, dan kemudian sistem akan otomatis menghitung amount perbulannya dengan klik tombol “Generate” dan data simulation yang diproporsional kan akan ditampilkan pada grid table, dan klik
“Save” untuk
menyimpan hasil proses proporsional. Manual Justification Dalam proses Manual Adjustment user harus memilih terlebih dahulu data mana yang akan diubah pada grid table dan data dapat langsung diubah, untuk menyimpan data yang telah diubah klik tombol “Save”. Code : Private Sub EditandSave() Dim cls As New clsRecordSet cls.OpenSQL("SELECT SimulationId FROM ProportionaltoDetail WHERE Year = " & tahunskr & " and SimulationId = '" & CmbSimId.Text & "'", cls.SQLConn) If cls.RecordCount = 0 Then If MsgBox("Apakah anda yakin akan menyimpan data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then For Each row In Me.GridEX1.GetRows kueri = "INSERT INTO ProportionaltoDetail(SimulationId,ItemName,BudgetClass,BudgetClassDesc,UserWC," & _ "UserWCDesc,Jan,Feb,Mar,Apr,Mei,Jun,Jul,Aug,Sep,Oct,Nov,Dec,Year,CreatedDate,CreatedBy,AssetCode ,product) VALUES('" & row.Cells("SimulationId").Value & "'," & _ "'" & row.Cells("ItemName").Value & "','" & row.Cells("BudgetClass").Value & "','" & row.Cells("BudgetClassDesc").Value & "'" & _
140 http://digilib.mercubuana.ac.id/
",'" & row.Cells("UserWC").Value & "','" & row.Cells("UserWCDesc").Value & "'," & row.Cells("Jan").Value & "" & _ "," & row.Cells("Feb").Value & "," & row.Cells("Mar").Value & "," & row.Cells("Apr").Value & "" & _ "," & row.Cells("Mei").Value & "," & row.Cells("Jun").Value & "," & row.Cells("Jul").Value & "" & _ "," & row.Cells("Aug").Value & "," & row.Cells("Sep").Value & "," & row.Cells("Oct").Value & "" & _ "," & row.Cells("Nov").Value & "," & row.Cells("Dec").Value & "," & row.Cells("Year").Value & "" & _ ",'" & Now & "','" & UserId & "','" & row.Cells("AssetCode").Value & "','" & row.Cells("Product").Value & "')" dcc.ExecuteNonQuery(kueri) Next ShowInfo("Data Berhasil Disimpan...") BtnSave.Enabled = False End If Else If MsgBox("Apakah anda yakin akan menyimpan data ini?", MessageBoxButtons.YesNo, "YBS") = _ System.Windows.Forms.DialogResult.Yes Then
32. Generate Budget ID
Gambar 4.53 Tampilan Form Generate Budget ID Keterangan : Proses Create Budget ID 1. Pada Main Form aplikasi YBS pilih menu navigasi “Budget”. 2. Pilih menu Setting Amount – Generate Budget ID. 3. Pada form Generate Budget ID system akan otomatis melakukan setting Budget ID berdasarkan data request budget oleh setiap user yang request statusnya bukan Carry Over,untuk Generate Budget ID klilk tombol “Create Budget ID” dan data budget ID akan tersimpan dan ditampilkan pada grid table. Code : Private Sub BtnGenerate_Click(sender As System.Object, e As System.EventArgs) Handles BtnGenerate.Click
141 http://digilib.mercubuana.ac.id/
Dim dccAx As New DataCONtrolClass cls.OpenSQL("select * from BudgetID where Year = " & tahunskr & "", cls.SQLConn) If cls.RecordCount = 0 Then rdr = cls.GetReaderSQL("SELECT a.DICWC,d.UserWC,a.ItemName,b.ItemCategory,(a.BudgetClass +'-'+ + c.CategoryId + a.CatSequence +'-' +'01'+ " & _ "(SELECT SUBSTRING(cONvert(varchar(5),(a.Year)),3,2))+''+a.DICWC+'-'+a.UserWC) AS BudgetId,d.Jan AMount FROM ReqDeptBudgetMONthly a INNER JOIN ItemList b ON a.ItemId = b.ItemId LEFT OUTER JOIN category c " & _ "ON b.ItemCategory = c.CategoryDesc INNER JOIN ProportionaltoDetail d ON a.BudgetClASs = d.BudgetClASs AND a.UserWC = d.UserWC " & _ "AND a.ItemName = d.ItemName WHERE OutlookStatus = 'Outlook III' and d.year = " & tahunskr & " and a.Jan > 0 AND (a.ReqStatusDesc not in (SELECT ReqStatusDesc FROM ReqDeptBudgetMONthly " & _ "WHERE ReqStatusDesc like '%C%' and OutlookStatus = 'Outlook III') or a.ReqStatusDesc is null) " & _ "UNION ALL " & _ "SELECT a.DICWC,d.UserWC,a.ItemName,b.ItemCategory,(a.BudgetClass +'-'+ + c.CategoryId + a.CatSequence +'-' +'02'+ " & _ "(SELECT SUBSTRING(cONvert(varchar(5),(a.Year)),3,2))+''+a.DICWC+'-'+a.UserWC) AS BudgetId,d.Feb AMount FROM ReqDeptBudgetMONthly a INNER JOIN ItemList b ON a.ItemId = b.ItemId LEFT OUTER JOIN category c " & _ "ON b.ItemCategory = c.CategoryDesc INNER JOIN ProportionaltoDetail d ON a.BudgetClASs = d.BudgetClASs AND a.UserWC = d.UserWC " & _ "AND a.ItemName = d.ItemName WHERE OutlookStatus = 'Outlook III' and d.year = " & tahunskr & " and a.Feb > 0 AND (a.ReqStatusDesc not in (SELECT ReqStatusDesc FROM ReqDeptBudgetMONthly " & _ "WHERE ReqStatusDesc like '%C%' and OutlookStatus = 'Outlook III') or a.ReqStatusDesc is null) " & _ "UNION ALL " & _ "SELECT a.DICWC,d.UserWC,a.ItemName,b.ItemCategory,(a.BudgetClass +'-'+ + c.CategoryId + a.CatSequence +'-' +'03'+ " & _ "(SELECT SUBSTRING(cONvert(varchar(5),(a.Year)),3,2))+''+a.DICWC+'-'+a.UserWC) AS BudgetId,d.mar AMount FROM ReqDeptBudgetMONthly a INNER JOIN ItemList b ON a.ItemId = b.ItemId LEFT OUTER JOIN category c " & _ "ON b.ItemCategory = c.CategoryDesc INNER JOIN ProportionaltoDetail d ON a.BudgetClASs = d.BudgetClASs AND a.UserWC = d.UserWC " & _ "AND a.ItemName = d.ItemName WHERE OutlookStatus = 'Outlook III' and d.year = " & tahunskr & " and a.mar > 0 AND (a.ReqStatusDesc not in (SELECT ReqStatusDesc FROM ReqDeptBudgetMONthly " & _ "WHERE ReqStatusDesc like '%C%' and OutlookStatus = 'Outlook III') or a.ReqStatusDesc is null) " & _ "UNION ALL " & _ "SELECT a.DICWC,d.UserWC,a.ItemName,b.ItemCategory,(a.BudgetClass +'-'+ + c.CategoryId + a.CatSequence +'-' +'04'+ " & _ "(SELECT SUBSTRING(cONvert(varchar(5),(a.Year)),3,2))+''+a.DICWC+'-'+a.UserWC) AS BudgetId,d.Apr AMount FROM ReqDeptBudgetMONthly a INNER JOIN ItemList b ON a.ItemId = b.ItemId LEFT OUTER JOIN category c " & _ "ON b.ItemCategory = c.CategoryDesc INNER JOIN ProportionaltoDetail d ON a.BudgetClASs = d.BudgetClASs AND a.UserWC = d.UserWC " & _ "AND a.ItemName = d.ItemName WHERE OutlookStatus = 'Outlook III' and d.year = " & tahunskr & " and a.Jan > 0 AND (a.ReqStatusDesc not in (SELECT ReqStatusDesc FROM ReqDeptBudgetMONthly " & _ "WHERE ReqStatusDesc like '%C%' and OutlookStatus = 'Outlook III') or a.ReqStatusDesc is null) " & _
4.4.
Pengujian Metode pengujian dilakukan untuk memastikan apakah sistem yang dipakai sudah sesuai
dengan yang diharapkan atau belum. Metode yang digunakan untuk pengujian ini adalah blackbox, yaitu menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain dan kode program. Pengujian dimaksudkan untuk mengetahui apakah fungsi – fungsi, masukan dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan.
142 http://digilib.mercubuana.ac.id/
4.4.1.
Skenario Pengujian Berikut adalah skenario pengujian sistem yang dilakukan dalam menguji sistem informasi
penyusunan master budget. 1. Skenario Pengujian Login Tabel 4.1 Tabel Skenario Pengujian Login Skenario Pengujian
Test Case
Hasil Yang Diharapkan
Gagal Login
Mengosongkan semua isian data Sistem akan menolak akses login, lalu langsung mengklik login dan menampilkan pesan tombol ‘ok “Username tidak ditemukan”
Gagal Login
Mengosongkan salah satu isian Sistem akan menolak akses data login, lalu klik tombol ‘ok login dan menampilkan pesan “Username tidak ditemukan”
Berhasil Login
Menginputkan dengan data login Sistem akan menerima akses yang benar, lalu klik tombol ‘ok’ dan kemudian menampilkan halaman utama
2. Skenario Pengujian Maintenance Data Budget Class Tabel 4.2 Tabel Skenario Pengujian Maintenance Data Budget Class Skenario Pengujian
Test Case
Hasil Yang Diharapkan
Gagal Input Data Budget Menambahkan data Budget Data Budget Class tidak dapat Class Class dengan karakter Budget diinputkan dengan lebih dari 4 karakter. Class lebih dari 4 Gagal Input Data Budget Menambahkan data Budget Pada kolom Budget Class Class Class dengan tanda baca atau tidak dapat mengetikkan tanda baca dan angka. angka Berhasil Input Budget Class
Data Menginputkan semua isian Sistem berhasil menyimpan dan, lalu klik tombol ‘Enter’ data yang telah diinputkan. atau pindah fokus grid
143 http://digilib.mercubuana.ac.id/
3. Skenario Pengujian Proses Request Budget Man Power Tabel 4.3 Tabel Skenario Pengujian Proses Request Budget Man Power Skenario Pengujian
Test Case
Menampilkan deskripsi Lakukan pemilihan work center WorkCenter.
Hasil yang diharapkan user Sistem akan menampilkan MPP Allocation dan Cost Allocation berdasarkan WorkCenter yang dipilih.
Gagal menampilkan Mengosongkan pilihan Sistem akan menolak proses menampilkan pesan deskripsi work center WorkCenter, lalu klik tombol dan ‘Pilihan WorkCenter tidak ‘Generate’ boleh kosong’ Gagal generate data
Berhasil generate data
Mengosongkan golongan, lalu ‘Generate’
klik
pilihan Sistem akan menolak proses menampilkan pesan tombol dan ‘Pilihan golongan tidak boleh kosong’
Menginputkan semua isian data Sistem akan menerima proses dengan benar, lalu klik tombol dan kemudian menampilkan list man power berdasarkan ‘Generate’ WorkCenter dan golongan yang dipilih.
Gagal mengubah data Menginputkan kolom jumlah Pada kolom jumlah man power jumlah man power dan man power atau jumlah overtime atau jumlah overtime tidak dapat mengetikkan tanda baca overtime dengan huruf atau huruf. Berhasil mengubah Menginputkan semua isian dan, Sistem berhasil menyimpan data jumlah man power lalu klik tombol ‘Enter’ atau data yang telah diinputkan. dan overtime pindah fokus grid 4. Skenario Pengujian Proses Request Budget Monthly Tabel 4.4 Tabel Skenario Pengujian Proses Request Budget Monthly Skenario Pengujian Menampilkan itemid
Test case Pengguna mengklik pilihan item id.
Hasil yang diharapkan Sistem akan menampilkan item id yang telah dimapping sesuai dengan Budget Class yang dimiliki pengguna.
Input data jumlah Menginputkan kolom jumlah Pada kolom bulan tidak dapat permintaan yang permintaan item pada kolom bulan mengetikkan tanda baca atau huruf. salah dengan huruf Mengosongkan Mengosongkan salah satu dari Sistem akan menampilkan data yang kolomItemID,DIC,User,OpeningCLM bahwa kolom tersebut wajib mandatory. onth, Act Desc,dan klik tombol Enter. diisi atau tidak boleh kosong. 144 http://digilib.mercubuana.ac.id/
5. Skenario Pengujian Proses Generate Laporan Tabel 4.5 Tabel Skenario Pengujian Proses Generate Laporan Skenario Pengujian
Test case
Generate Report
Hasil yang diharapkan
Pengguna memilih part report dan Sistem akan menampilkan data sesuai report yang klik tombol OK. dipilih
6. Skenario Pengujian verifikasi data budget pada Form Master Budget Tabel 4.6 Tabel Skenario Pengujian Verifikasi data Budget pada form Master Budget Skenario Pengujian
Test case
Menampilkan data Lengkapi semua budget requested pengecekan data budget
Hasil yang diharapkan parameter Sistem akan menampilkan data budget sesuai parameter yang dipilih.
Menghapus data Pilih salah satu data budget dan klik Sistem berhasil menghapus data budget yang dipilih budget requested delete Mengubah data Ubah salah satu data budget dan klik Sistem berhasil menyimpan data budget yang telah diubah budget requested Enter atau pindah fokus grid 7. Skenario Pengujian proses Simulasi Tabel 4.7 Tabel Skenario Pengujian proses Simulasi Skenario Pengujian
Test case
Hasil yang diharapkan
Gagal Mengosongkan salah satu Sistem akan menampilkan infolog menampilkan data pilihan parameter data simulasi bahwa data Part Report atau tahun tidak boleh kosong report dan klik generate Berhasil Melengkapi data Part Report Sistem menampilkan data request menampilkan data dan Tahun, kemudian klik budget sesuai dengan part report yang dipilih report ‘Generate’ Mengubah data budget Manual Justification amount budget
ratio Isi kolom ratio
Amount after pada tiap bagian data akan mengikuti sesuai perhitungan ratio yang diberikan
Ubah data pada kolom amount Data pada report category,Budget Class atau part report akan after mengikut sesuai perhitungan angka yang diubah.
Simpan data Selesaikan proses simulasi dan Sistem berhasil menyimpan data simulasi yang telah dilakukan untuk simulasi budget klik ‘simpan’ part report yang dipilih.
145 http://digilib.mercubuana.ac.id/
8. Skenario Pengujian Compilation for PBT Tabel 4.8 Tabel Skenario Pengujian Compilation For PBT Skenario Pengujian
Test case
Hasil yang diharapkan
Menampilkan data Pengguna memilih tahun Sistem akan menampilkan data simulasi untuk tahun tersebut simulasi simulasi yang dilakukan Menampilkan Pengguna mengklik simulation Sistem akan menampilkan id simulasi yang sesuai part report idsimulasi yang ID yang dipilih sudah ada. Berhasil PBT
generate Pengguna Generate
Menyimpan kompilasi
mengklik
data Selesaikan proses dan klik ‘simpan’
tombol Sistem akan menampilkan PBT dan PBT to Sales dari simulasi yang telah dipilih sesuai dengan perhitungan PBT kompilasi Sistem berhasil menyimpan data kompilasi yang dilakukan.
9. Skenario Pengujian proses Proportional to Detail Tabel 4.9 Tabel Skenario Pengujian proses Proportional to Detail Skenario Pengujian
Test case
Hasil yang diharapkan
Berhasil generate Pilih simulasi id dan klik Sistem akan otomatis melakukan proporsional terhadap part report proporsional to tombol ‘generate’ yang dipilih, sesuai dengan detail perhitungan proporsional Gagal update data Update nilai proporsianal proportional dengan menginputkan huruf atau tanda baca Berhasil update Selesaikan proses proporsional data proportional dan klik ‘simpan’
Kolom bulan tidak bisa diisi dengan huruf dan tanda baca Sistem berhasil menyimpan data proporsional yang dilakukan dan muncul infolog ‘data sudah disimpan’
10. Skenario Pengujian proses Generate Budget ID. Tabel 4.10 Tabel Skenario Pengujian Generate Budget ID Skenario Pengujian
Test case
Berhasil generate Pengguna mengklik budget id ‘Generate’
Hasil yang diharapkan tombol Sistem akan otomatis menampilkan data budget id sesuai tahun berjalan.
146 http://digilib.mercubuana.ac.id/
4.4.2
Hasil Pengujian Berikut adalah hasil pengujian sistem yang didapatkan berdasarkan skenario pengujian sistem
informasi penyusunan master budget. 1. Hasil Pengujian Login Tabel 4.11 Tabel hasil pengujian login Skenario Pengujian
Test case
Hasil Pengujian
Kesimpulan
Gagal Login
Mengosongkan semua Sistem menolak akses login menampilkan pesan isian data login, lalu dan “Username tidak ditemukan” langsung mengklik tombol ‘ok
Valid
Gagal Login
Mengosongkan salah satu Sistem menolak akses login menampilkan pesan isian data login, lalu klik dan “Username tidak ditemukan” tombol ‘ok
Valid
Berhasil Login
Menginputkan dengan Sistem menerima akses dan menampilkan data login yang benar, kemudian halaman utama lalu klik tombol ‘ok’
Valid
2. Hasil Pengujian Budget Class Tabel 4.12 Tabel hasil pengujian Maintenance Data Budget Class Skenario Pengujian
Test case
Hasil Pengujian
Kesimpulan
Gagal Data Class
Input Menambahkan data Data Budget Class tidak dapat Budget Budget Class dengan diinputkan dengan lebih dari 4 karakter Budget Class karakter. lebih dari 4
Valid
Gagal Data Class
Input Menambahkan data Pada kolom Budget Class Budget Budget Class dengan tidak dapat mengetikkan tanda baca dan angka. tanda baca atau angka
Valid
Berhasil Input Menginputkan semua Sistem berhasil menyimpan Data Budget isian dan, lalu klik tombol data yang telah diinputkan. Class ‘Enter’ atau pindah fokus grid
Valid
147 http://digilib.mercubuana.ac.id/
3. Hasil pengujian request budget man Power Tabel 4.13 Tabel hasil Pengujian Proses Request Budget Man Power Skenario Pengujian
Test case
Hasil Pengujian
Menampilkan Lakukan pemilihan Sistem menampilkan MPP Allocation dan Cost deskripsi work user WorkCenter. Allocation berdasarkan center WorkCenter yang dipilih. Gagal menampilkan Mengosongkan pilihan Sistem menolak proses dan deskripsi work WorkCenter, lalu klik menampilkan pesan ‘Pilihan WorkCenter tidak boleh center tombol ‘Generate’ kosong’ Gagal generate data Mengosongkan pilihan Sistem menolak proses dan golongan, lalu klik menampilkan pesan ‘Pilihan golongan tidak boleh tombol ‘Generate’ kosong’ Berhasil generate Menginputkan semua Sistem menerima proses dan data isian data dengan kemudian menampilkan list benar, lalu klik tombol man power berdasarkan WorkCenter dan golongan ‘Generate’ yang dipilih. Gagal mengubah Menginputkan kolom Pada kolom jumlah man data jumlah man jumlah man power atau power atau jumlah overtime power dan overtime jumlah overtime tidak dapat mengetikkan tanda baca atau huruf. dengan huruf Berhasil mengubah Menginputkan semua Sistem berhasil menyimpan data jumlah man isian dan, lalu klik data yang telah diinputkan. power dan overtime tombol ‘Enter’ atau pindah fokus grid
Kesimpulan Valid
Valid
Valid
Valid
Valid
Valid
4. Hasil pengujian Proses Request Budget Monthly Tabel 4.14 Tabel hasil pengujian Proses Request Budget Monthly Skenario Pengujian
Test case
Hasil Pengujian
Menampilkan itemid
Pengguna mengklik Sistem menampilkan item id yang telah dimapping pilihan item id. sesuai dengan Budget Class yang dimiliki pengguna. Input data jumlah Menginputkan kolom Pada kolom bulan tidak permintaan yang jumlah permintaan item dapat mengetikkan tanda salah pada kolom bulan dengan baca atau huruf. huruf Mengosongkan data Mengosongkan salah satu Sistem menampilkan yang mandatory. dari kolom Activity Plan, bahwa kolom tersebut wajib diisi atau tidak ItemID,DIC,User,dan boleh kosong. klik tombol Enter. 148 http://digilib.mercubuana.ac.id/
Kesimpulan Valid
Valid
Valid
5. Hasil pengujian Proses Generate Laporan Tabel 4.15 Tabel hasil pengujian Proses Generate Laporan Skenario Pengujian Generate Report
Test case
Hasil Pengujian
Kesimpulan
Pengguna memilih part Sistem menampilkan data report dan klik tombol OK. sesuai report yang dipilih
Valid
6. Hasil pengujian verifikasi data budget pada Form Master Budget Tabel 4.16 Tabel hasil pengujian Verifikasi data Budget pada form Master Budget Skenario Pengujian Menampilkan data budget requested Menghapus data budget requested
Test case
Hasil Pengujian
Kesimpulan
Lengkapi semua parameter Sistem menampilkan data budget sesuai parameter pengecekan data budget yang dipilih.
Valid
Pilih salah satu data budget Sistem berhasil menghapus data budget dan klik delete yang dipilih Mengubah data Ubah salah satu data budget Sistem berhasil budget requested dan klik Enter atau pindah menyimpan data budget yang telah diubah fokus grid
Valid Valid
7. Hasil pengujian proses Simulasi Tabel 4.17 Tabel hasil pengujian proses Simulasi Skenario Pengujian
Test case
Hasil Pengujian
Kesimpulan
Mengosongkan salah satu pilihan parameter data simulasi dan klik generate Melengkapi data Part Report dan Tahun, kemudian klik ‘Generate’
Sistem menampilkan infolog bahwa data Part Report atau tahun tidak boleh kosong
Valid
Sistem menampilkan data request budget sesuai dengan part report yang dipilih Mengubah ratio Isi kolom ratio Amount after pada tiap bagian data mengikuti sesuai data budget perhitungan ratio yang diberikan Manual Ubah data pada kolom Data pada report category,Budget Class atau Justification amount after part report mengikut sesuai amount budget perhitungan angka yang diubah. Simpan data Selesaikan proses simulasi Sistem berhasil menyimpan data simulasi yang telah simulasi budget dan klik ‘simpan’ dilakukan untuk part report yang dipilih.
Valid
Gagal menampilkan data report Berhasil menampilkan data report
149 http://digilib.mercubuana.ac.id/
Valid
Valid
Valid
8. Hasil pengujian Compilation for PBT Tabel 4.18 Tabel hasil pengujian Compilation For PBT Skenario Pengujian
Test case
Hasil Pengujian
Menampilkan data simulasi
Pengguna memilih tahun Sistem menampilkan data simulasi untuk tahun simulasi yang dilakukan tersebut Menampilkan Pengguna mengklik Sistem menampilkan id simulasi yang sesuai part idsimulasi yang simulation ID report yang dipilih sudah ada. Berhasil Pengguna mengklik tombol Sistem menampilkan PBT dan PBT to Sales dari generate PBT Generate simulasi yang telah dipilih sesuai dengan perhitungan PBT Menyimpan Selesaikan proses kompilasi Sistem berhasil menyimpan data kompilasi data kompilasi dan klik ‘simpan’ yang dilakukan.
Kesimpulan Valid Valid
Valid
Valid
9. Hasil pengujian proses Proportional to Detail Tabel 4.19 Tabel hasil pengujian proses Proportional to Detail Skenario Pengujian
Test case
Hasil Pengujian
Kesimpulan
Berhasil Pilih simulasi id dan klik Sistem otomatis melakukan proporsional generate tombol ‘generate’ terhadap part report yang proporsional to dipilih, sesuai dengan detail perhitungan proporsional Gagal update Update nilai proporsianal Kolom bulan tidak bisa data dengan menginputkan huruf diisi dengan huruf dan tanda baca proportional atau tanda baca
Valid
Berhasil update Selesaikan data proporsional proportional ‘simpan’
Valid
proses Sistem berhasil data dan klik menyimpan proporsional yang dilakukan dan muncul infolog ‘data sudah disimpan’
Valid
10. Hasil pengujian proses Generate Budget ID. Tabel 4.20 Tabel hasil pengujian proses Generate Budget ID Skenario Test case Hasil Pengujian Pengujian Berhasil Pengguna mengklik tombol Sistem akan otomatis menampilkan data budget generate budget ‘Generate’ id sesuai tahun berjalan. id 150 http://digilib.mercubuana.ac.id/
Kesimpulan Valid
4.4.3
Analisa Hasil Pengujian
Setelah melakukan pengujian secara menyeluruh terhadap menu yang ada di sistem maka dapat disimpulkan analisa hasil dari pengujian ini yaitu : 1. Proses login kedalam sistem YBS berjalan dengan baik, dan sesuai dengan hak akses
yang telah ditentukan. 2. Penambahan dan ubah data pada form budget class berjalan dengan baik, dan kontrol dalam penamaan budget class dapat diakomodir oleh sistem. 3. Penambahan data pada request budget monthly sesuai dengan parameter yang telah disetting antara item,budget class dan workcenter yang bisa mengaksesnya. 4. Laporan budget yang dikeuarkan sudah sesuai dengan kebutuhan oleh PIC Budget dab sesuai dengan data yang diinput kedalam sistem YBS, namun untuk laporan budget setelah proses simulasi dan proporsional masih diperlukan pengembangan dan perbaikan lebih lanjut. 5. Verifikasi data budget hanya dapat dilakukan oleh DIC dan PIC Budget, dan hasil verifikasi berhasil diupdate. 6. Proses penambahan data budget Man Power berhasil menambahkan data sesuai dengan parameter golongan dan workcenter yang dipilih. 7. Hasil proses simulasi sudah sesuai dengan pengurangan atau penambahan yang diberikan baik menggunakan ratio ataupun amount. 8. Proses proportional to detail sesuai dengan angka proporsional yang diharapkan. 9. Budget ID berhasil dibuat dengan mengambil dari initial data permintaan budget itu sendiri.
151 http://digilib.mercubuana.ac.id/