private void pushButton_Click(object sender, EventArgs e) { string LocalFile; List <string> Commands = new List <string>(); Dictionary <string, string> PushList = new Dictionary <string, string>(); string[] Path; foreach (var Member in CreateSPFs) { Commands.Add("CRTSRCPF FILE(" + lib.Text.Trim() + "/" + Member.Key + ") RCDLEN(" + Member.Value.ToString() + ")"); } foreach (string Member in DeleteMembers) { Path = Member.Split('/'); Commands.Add("RMVM FILE(" + lib.Text.Trim() + "/" + Path[0] + ") MBR(" + Path[1] + ")"); } foreach (var Member in CreateMembers) { Path = Member.Key.Trim().Split('/'); Commands.Add("ADDPFM FILE(" + lib.Text.Trim() + "/" + Path[0] + ") MBR(" + Path[1] + ") SRCTYPE(" + Member.Value.Trim() + ")"); } foreach (var Member in UploadMembers) { Path = Member.Key.Trim().Split('/'); LocalFile = IBMiUtils.GetLocalFile(lib.Text.Trim(), Path[0], Path[1], Member.Value); PushList.Add(LocalFile, "/QSYS.lib/" + lib.Text.Trim() + ".lib/" + Path[0] + ".file/" + Path[1] + ".mbr"); } Boolean Success = IBMi.RunCommands(Commands.ToArray()); if (Success) { foreach (var File in PushList) { if (IBMi.UploadFile(File.Key, File.Value) == false) { Success = false; } } if (Success) { MessageBox.Show("Push to server was successful."); this.Close(); } else { MessageBox.Show("Push to server was not successful (stage 2)"); } } else { MessageBox.Show("Push to server was not successful (stage 1)"); } }